Im Moment benutze ich zwei Befehle, ich bin mir sicher, dass es einen besseren Weg geben muss ...
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]'
arbeiten?Antworten:
ack (oder unter Debian / Ubuntu ack-grep) ignoriert Nicht-Quelldateien wie Versionskontrolle oder Binärdateien. Sehr hilfreich.
So durchsuchen Sie nur C- und H-Dateien:
Die
--cc
(die längere Form ist--type cc
) betrachtet nur .c .h & .xs-Dateien. Die vollständige Liste der Dateitypen kann mit angezeigt werdenack-grep --help type
. In den meisten Fällen benötigen Sie das nicht besonders--type
, da in der Regel nur die zu durchsuchenden Dateien vorhanden sind und dann Dateien, die standardmäßig nicht angezeigt werden, z. B. Binärdateien, Sicherungen und Versionskontrolldateien.quelle
Das
grep
Programm selbst kann rekursiv suchen und akzeptiert auch die Option, nur bestimmte Dateien zu durchsuchen. Das Folgende entspricht Ihren beidenfind
Befehlen.quelle
Der Befehl find kann grep selbst aufrufen.
und Variationen davon.
quelle
Ich kann so etwas zu deinem hinzufügen
~/.bashrc
quelle