Befehl zum rekursiven Entfernen aller Dateien und Ordner, einschließlich versteckter Dateien, auf dem MAC OS Terminal?

11

rm -rf * entfernt alle Dateien und Ordner, aber keine versteckten.

rm -rf .* werden alle versteckten Dateien und Ordner entfernt, aber nicht diejenigen, die nicht versteckt sind, richtig?

Welchen Befehl sollte man eingeben, um alle Dateien und Ordner einschließlich der versteckten zu löschen? (außer. und ..); ?

MEM
quelle

Antworten:

13
rm -rf * .*

wird den Trick machen.

user1055604
quelle
1
NEIN! .*wird auf alle unsichtbaren Einträge im aktuellen Verzeichnis erweitert, einschließlich .. - was bedeutet, dass bei Verwendung .*als Argument rm -rfversucht wird, das Verzeichnis über dem Verzeichnis, in dem Sie sich gerade befinden, und den gesamten Inhalt zu löschen . rm wird sich weigern, aber ich denke nicht daran, mich auf diesen Safe zu verlassen ...
Gordon Davisson
@ Gordon Davisson: Ich habe ein Verzeichnis erstellt. Ich habe Dateien hinzugefügt, einschließlich versteckter Dateien. Ich habe diesen Befehl gegeben. Es hat alle Inhalte in diesem Verzeichnis rekursiv gelöscht, und es hat keine Inhalte über diesem Verzeichnis gelöscht. Können Sie bitte Ihren Kommentar klarstellen?
MEM
Vielen Dank für die Klarstellung Ihres obigen Kommentars. Jetzt verstehe ich Ihren Punkt. Irgendein alternativer Vorschlag dann?
MEM
Wie wäre es findmit der -deleteFlagge ...
user1055604
1
@GordonDavisson rmsollte rm: "." and ".." may not be removedin diesem Fall eine Nachricht drucken - das übergeordnete Verzeichnis wird nicht automatisch entfernt.
Slhck
1

Versuche dies:

find . -mindepth 1 -delete

Ich bin nicht sicher, ob -mindepthdies von allen Implementierungen von unterstützt wird find. Wenn Sie es nicht haben, -pathsollten Sie eine andere Möglichkeit angeben, um zu verhindern, dass es versucht, es zu löschen .:

find . -path "*/*" -delete
Gordon Davisson
quelle
BSD findhat diese Option auch, yup.
Slhck
1

Verwenden Sie einfach diesen Befehl, um Dateien / Verzeichnisse nach bestimmten Kriterien zu löschen:

# tmpwatch -fauv 0 .
Antoine Nguyen
quelle
0

shopt -s dotglobAußerdem werden *Include-Dateien erstellt, die mit einem Punkt beginnen.

Lri
quelle