Am Montag, 20. Juni 2011 schrieb Andrei POPESCU: > On Lu, 20 iun 11, 14:28:08, Martin Steigerwald wrote: > > Sinnvoll wäre dafür allerdings trotzdem ein Shortcut aka ein Befehl, > > der ein leeres Verzeichnis *oder* eine Datei löscht. > > > > Ich würde ja im Grunde rm auch leere Verzeichnisse löschen lassen. > > Dafür rmdir zu verwenden, ist mir nicht ganz eingängig. Liegt aber > > vielleicht auch daran, dass ich vom Amiga her komme. > > > > Dort gabs delete und dem war es egal, obs eine Datei oder ein leeres > > Verzeichnis war. > > > > Mit der Option ALL gings dann auch mit gefüllten Verzeichnissen. > > Es sollte nicht sehr kompliziert sein ein 'delete' Skript zu schreiben, > der je nach bedarf 'rm', 'rmdir' oder 'rm -rf' aufruft ;) Nein, genau darum ging es mir ja nicht. Für Skripte denke ich ist etwas gut, dass sowohl eine Datei oder ein *leeres* Verzeichnis löscht. Für so etwas kommt in der Regel rm -rf zum Einsatz, das aber auch einen kompletten Verzeichnis-Baum löscht. Jetzt braucht es nur noch einen Fehler im Skript, sei es dass es statt /tmp/foo-2917 den Pfad / generiert, um den krassen Unterschied zwischen beiden Ansätzen zu demonstrieren. Interessant fände ich dann noch eine Option, wie tief der Löschvorgang reingehen möchte. Wenn ich ein Verzeichnis mit Dateien aber keinen weiteren Unterverzeichnissen, die wiederum Dateien enthalten, löschen möchte, dann wäre ein solcher Befehl nett. Aber im Grunde gibts den ja: find PFAD -maxdepth 1 -delete Und meinen Delete-Ersatz gibt es auch: find PFAD -maxdepth 0 -delete löscht eine Datei oder ein leeres Verzeichnis ;) martin@merkaba:~> cd /tmp martin@merkaba:/tmp> mkdir Verzeichnis martin@merkaba:/tmp> touch Datei martin@merkaba:/tmp> mkdir Verzeichnis2 martin@merkaba:/tmp> touch Verzeichnis2/bitte-nicht-löschen martin@merkaba:/tmp> find Verzeichnis -maxdepth 0 -delete martin@merkaba:/tmp> find Datei -maxdepth 0 -delete martin@merkaba:/tmp> find Verzeichnis2 -maxdepth 0 -delete find: Kann "Verzeichnis2" nicht löschen.: Das Verzeichnis ist nicht leer martin@merkaba:/tmp#1> ls Verzeichnis Datei Verzeichnis2 ls: Zugriff auf Verzeichnis nicht möglich: Datei oder Verzeichnis nicht gefunden ls: Zugriff auf Datei nicht möglich: Datei oder Verzeichnis nicht gefunden Verzeichnis2: bitte-nicht-löschen martin@merkaba:/tmp#2 -- Martin 'Helios' Steigerwald - http://www.Lichtvoll.de GPG: 03B0 0D6C 0040 0710 4AFA B82F 991B EAAC A599 84C7
Attachment:
signature.asc
Description: This is a digitally signed message part.