На данный момент я использую две команды, я уверен, что должен быть лучший способ ...
wim@wim-acer:~/ffmpeg$ find . -name "*.h" -print0 | xargs -0 grep -i invalid\ preset
wim@wim-acer:~/ffmpeg$ find . -name "*.c" -print0 | xargs -0 grep -i invalid\ preset
-name '*.[ch]'
работу?Ответы:
ack (или, в Debian / Ubuntu, ack-grep) будет игнорировать не исходные файлы, такие как контроль версий или двоичные файлы. Очень полезный.
искать только файлы .c и .h, как указано выше:
--cc
(чем больше форма--type cc
) смотрит только на .c .h и .xs файлов. Полный список типов файлов доступен для просмотраack-grep --help type
. В большинстве случаев вам это особенно не нужно--type
, так как обычно в нем будут только файлы для поиска, а затем файлы, которые вы не увидите по умолчанию, например, двоичные файлы, резервные копии и файлы контроля версий.источник
Сама
grep
программа может выполнять рекурсивный поиск, а также принимает опцию поиска только определенных файлов. Следующее эквивалентно вашим двумfind
командам.источник
Команда find может сама вызывать grep.
и их вариации.
источник
Я могу добавить что-то подобное в ваш
~/.bashrc
источник