Ich habe ein Verzeichnis wie folgt (angegeben von ls -la):
total 8
drwxr-xr-x 6 <user> <group> 204 Oct 18 12:13 .
drwxr-xr-x 7 <user> <group> 238 Oct 18 11:29 ..
drwxr-xr-x 14 <user> <group> 476 Oct 18 12:31 .git
-rw-r--r-- 1 <user> <group> 601 Oct 18 12:03 index.html
drwxr-xr-x 2 <user> <group> 68 Oct 18 12:13 test
drwxr-xr-x 2 <user> <group> 68 Oct 18 12:13 test2
Beim Ausführen ack . -fwerden die Dateien im Verzeichnis ausgedruckt:
index.html
Wie kann ich die Verzeichnisse im Verzeichnis ausdrucken lassen ? Ich möchte das .gitVerzeichnis ignorieren (was meines Erachtens das Standardverhalten für ack ist). Wie kann ich in diesem Sinne bestimmte Verzeichnisse ignorieren?
Ich verwende ack 1.9.6 unter Mac OSX 10.8.2.
xargs. Meine Optionen sind find --print0(seltsame Syntax, ich versuche, mich davon fernzuhalten) und ack --print0beide leiten sich leicht ein xargs -0.
ack --print0weniger seltsam als find -print0? Wenn Sie einen Befehl finden, an den Sie sich nur schwer erinnern können, erstellen Sie einen Alias.
find . -name .git -a -type d -prune -o -type f -print0vereinfacht zu ack . -f --print0. Ebenso möchte ich einen Weg finden, einfach find . -name .git -a -type d -prune -o -type d -print0in sein Ack-Äquivalent zu gelangen.