Wie kann ich eine Liste von Verzeichnissen mit ack bekommen?


1

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.


1
Warum möchten Sie ack verwenden, um Dinge anstelle von ls aufzulisten?
Alan Shutko

Ich brauche etwas, in das ich gerne hineinpfeifen kann xargs. Meine Optionen sind find --print0(seltsame Syntax, ich versuche, mich davon fernzuhalten) und ack --print0beide leiten sich leicht ein xargs -0.
Knpwrs

Wie ist es also ack --print0weniger seltsam als find -print0? Wenn Sie einen Befehl finden, an den Sie sich nur schwer erinnern können, erstellen Sie einen Alias.
Grawity

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.
Knpwrs

Antworten:


0

Das kannst du nicht. ack gilt nur für Dateien, nicht für Verzeichnisse. Es handelt sich um ein Textsuchwerkzeug und nicht um einen allgemeinen Dateisucher.

Verwenden Sie die --ignore-dirOption, um Verzeichnisse zu ignorieren .

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.