Tjorben Geschrieben 22. Juli 2008 Teilen Geschrieben 22. Juli 2008 Hallo Ich muss in Bash eine Schleife über alle Ordner eines Verzeichnisses machen. Dazu hab ich in einem Forum folgendes gefunden: VERZEICHNIS=`ls -d */` was so auch funktioniert im Gegensatz zu VERZEICHNIS=`ls -d ` In Verzeichnis steht nun aber Order1/ Order2/ Order3/ und ich muss die Slasches rausbekommen. Die einzige Methode die ich dafür bis jetzt kenne ist VERZEICHNIS=${VERZEICHNIS//"/"/" "} Damit passiert aber nichts, die Variable bleibt unverändert. Kann mir jemand weiterhelfen? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 22. Juli 2008 Teilen Geschrieben 22. Juli 2008 man basename Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Tjorben Geschrieben 23. Juli 2008 Autor Teilen Geschrieben 23. Juli 2008 basename holt mir doch den Dateinamen aus einem Pfad. Ich habe hier doch keinen Pfad sondern eine Auflistung aller Ordner. ich muss nur den letzten Slash entfernen was ich nicht hinbekomme Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 23. Juli 2008 Teilen Geschrieben 23. Juli 2008 Bitte man-Page lesen: basename, dirname -- return filename or directory portion of pathname wenn ich "basename /dev(/)" mache, dann erhalte ich "dev" Phil Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Tjorben Geschrieben 23. Juli 2008 Autor Teilen Geschrieben 23. Juli 2008 wie lautet denn dann der komplette befehl um alle Ordner eines Verzeichnisses in einer Liste zu speichern? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Tjorben Geschrieben 23. Juli 2008 Autor Teilen Geschrieben 23. Juli 2008 Oh hat geklappt. Vielen Dank Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 23. Juli 2008 Teilen Geschrieben 23. Juli 2008 Zu Deinem Originalpost: um alle Verzeichnisse (inkl Unterverzeichnisse) nur die Ordnernamen zu bekommen: find . -type d -exec basename \{\} \; Find hat eine Menge Optionen ;-) Phil Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.