Archiv verlassen und diese Seite im Standarddesign anzeigen : Befehl ls
Hallo zusammen,
ich bräuchte mal Eure Hilfe, da ich nicht weiterkomme.
Ich möchte mir nur die Ordner anzeigen lassen, die keine (weiteren) Unterordner haben, sondern nur die Ordner, die lediglich Dateien enthalten.
ls --help brachte mich nicht weiter.
ls -'aber-nur-die-Ordner-die-keine-Unterordner-haben' funktioniert leider nicht.
Vielen Dank schonmal.
Gruß
Fußhupe
Versuchs mal mit
find . -maxdepth 1 -empty -type dDas sollte alle leeren Verzeichnisse im aktuellen Verzeichnis anzeigen.
Kreol
P.S.
Oh, zu flüchtig gelesen, Nicht leer sondern nur ohne Unterverzeichnisse. Hmm. ls kann das wohl nicht, da wirst Du etwas scripten müssen.
{ find . -type d; echo; } |
awk 'index($0,prev"/")!=1 && NR!=1 {print prev}
1 {sub(/\/$/,""); prev=$0}'
{ find . -type d; echo; } |
awk 'index($0,prev"/")!=1 && NR!=1 {print prev}
1 {sub(/\/$/,""); prev=$0}'
Gibt's dafür auch noch eine Erklärung, also was beim AWK da passiert?
Interessiert, weil AWK nicht so mein Ding...
Danke & Gruß
L00NIX
Es wird dir Tatsache ausgenutzt, dass bei find die Parents immer vor den Children stehen.
index($0,prev"/")!=1 && NR!=1 {print prev}Das schreibt ein gültiges Verzeichnis (das vorher gefundene) wo das vorherige Verzeichnis nicht Teil des aktuellen Verzeichnisses ist - also kein Unterverzeichnis hat.
HirschHeisseIch
23.05.11, 22:05
Gehts nur mir so, oder finden hier andere auch die Variante vom Kreol einfacher? ;)
Wobei ich mir hier nicht sicher bin, ob das "-empty" da auch so passt. Immerhin sollen die Verzeichnisse ja Dateien enthalten. (hab jetzt nicht in der Man-Page nachgeschlagen...)
Gehts nur mir so, oder finden hier andere auch die Variante vom Kreol einfacher? ;)...
Nein, denn es sollen Verzeichnisse, die keine Unterverzeichnisse mehr haben angezeigt werden. Das ist was anderes als Verzeichnisse, die leer sind :rolleyes:
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.