Antworten:
Warum kann ich mit einem solchen Befehl nicht alle PDF-Dateien in einem Verzeichnis und in Unterverzeichnissen finden?
Der Platzhalter *.pdf
in Ihrem Befehl wird vor der Ausführung bash
um alle übereinstimmenden Dateien im aktuellen Verzeichnis erweitert .ls
Wie mache ich es? (Ich benutze Bash in Ubuntu)
find ist deine antwort.
find . -name \*.pdf
ist eine rekursive Auflistung von PDF-Dateien. -iname
Ist die Groß- / Kleinschreibung nicht relevant?
find . -iname \*.pdf
listet alle .pdf-Dateien auf, einschließlich zum Beispiel foo.PDF
Sie können ls beispielsweise auch für eine begrenzte Anzahl von Unterordnern verwenden
ls *.pdf */*.pdf
Alle PDF-Dateien in Unterordnern finden (entspricht bar / foo.pdf, nicht bar / foo / asdf.pdf und nicht foo.PDF).
Wenn Sie mit find gefundene Dateien entfernen möchten, können Sie verwenden
find . -iname \*.pdf -delete
Wie andere gesagt haben, ist finden die Antwort.
Nun zum anderen Teil.
Wie würde ich dann vorgehen, um alle diese Dateien zu löschen?
finden . -iname * .pdf -exec rm {} \;
Sollte es tun.
ls -l
Befehl, Dateigröße zeigen, Eigentum, Datum, etc., können Siefind
mit der-ls
Option, zBfind . -name \*.pdf -ls