Как использовать команду head для файлов в текущем каталоге и подкаталогах? - PullRequest
2 голосов
/ 11 декабря 2010

Если я использую head *.txt | less, будет отображаться заголовок всех файлов с * .txt в текущем каталоге?Что, если я хочу отобразить заголовок всех файлов с .txt, находящихся в текущем каталоге и подкаталогах.

Ответы [ 4 ]

3 голосов
/ 11 декабря 2010

Вы можете использовать find:

find -name '*.txt' -exec head {} \;
1 голос
/ 11 декабря 2010

Если ваша оболочка поддерживает это (zsh поддерживает, не уверен насчет остальных), вы можете использовать ** синтаксис:

head **/*.txt
0 голосов
/ 10 мая 2013

Я пытался сделать то же самое; вот что у меня сработало (вывожу ответ на файл headtest.txt). Обратите внимание, что это будет перемещаться по текущему каталогу и подкаталогам.

find . -type f -exec head '{}' \; >> headtest.txt

Надеюсь, это поможет.

0 голосов
/ 11 декабря 2010

Другой вариант использования -

find -name '*.txt' | xargs head

Обратите внимание, что -name не должно работать во всех средах. В этом случае вы можете использовать

find . | grep ".txt" | xargs head
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...