Исключая. и.. от результатов в находке и ls

Согласно tmux(1) страница справочника, unbind-key -a то, что Вы ищете.

Отметьте это tmux выполняет сервер, который только выйдет, после того как все сеансы закрыты, и привязки клавиш на сервер. Следовательно, после того как Вы создаете привязку, это будет персистентным по всем клиентским отсоединениям.

Тем не менее помещенный unbind-key -a в самом верху Вашего конфигурационного файла, и на перезагрузке конфигурации это должно сделать то, что Вы хотите - развязывают все и начинают связывать с нуля. Или - если Ваши модификации меньше - развязывают только, что Вы хотите изменить.

6
08.10.2013, 18:51
3 ответа

С zsh:

count() echo $#
count *        # non-hidden files (all types)
count *(D)     # files (all types)
count **/*(D)  # files recursively (all types)
count **/*(D/)  # directories only (recursively)

(zsh шарики никогда не включают . ни .. даже когда dotglob включен (как с (D) спецификатор globbing)).

Для предотвращения сообщения об ошибке, когда не будет никакого файла добавьте N спецификатор globbing:

count *(ND)

Это заставляет шарик ни до чего не расширяться (никакой аргумент, не пустой аргумент), если там не идет ни в какое сравнение.

Обратите внимание, что начиная с символа новой строки столь же допустимый символ как любой в имени файла, передавая вывод по каналу ls или find кому: wc -l не корректно.

POSIXly, Вы могли рассчитать / символы вместо новой строки:

find . ! -name . -prune -print | grep -c /

Или рекурсивно, использование этого приема:

find .//. ! -name . -prune -print | grep -c //
4
27.01.2020, 20:23
  • 1
    Здорово. Одна вещь, которую я заметил, хотя это, если папка имеет 0 файлы count folder выводы no matches found. Есть ли любой способ заставить его возвратиться 0? –  Josh 08.10.2013, 21:13
  • 2
    @Josh, да, используют N спецификатор globbing (nullglob) –  Stéphane Chazelas 08.10.2013, 22:28

Для ls, использовать -A вместо -a.

от man ls:

   -A, --almost-all
          do not list implied . and ..
7
27.01.2020, 20:23

Добираться find для исключения точечных каталогов, можно использовать это:

$ find . ! -path . -type d

Пример

$ find . ! -path . -type d | head -5
./.vim_SO
./.vim_SO/bundle
./.vim_SO/bundle/vim-fugitive
./.vim_SO/bundle/vim-fugitive/plugin
./.vim_SO/bundle/vim-fugitive/doc
...
3
27.01.2020, 20:23

Теги

Похожие вопросы