Ich muss den gesamten Inhalt eines Ordners in CentOS löschen, aber nicht den Ordner selbst.
Zum Beispiel: Ich habe einen Ordner mit dem Namen "MYFOLDER", der die Unterordner FOLD_1, FOLD_2, FOLD_3, FOLD_4 ... usw. und einige Dateien enthält. Ich muss alle diese Ordner und Dateien löschen, aber nicht den Containerordner MYFOLDER. Ich benötige dieses Verzeichnis, um die Ergebnisse eines vorherigen Prozesses zu steuern.
Ich habe es mit dem rm -rf
Befehl versucht , aber dies löscht auch den Containerordner.
shopt -s dotglob
zuerst einstellen .rm -R /path/to/myfolder/*
ist die richtige Syntax, um übermäßige Anforderungen zum Genehmigen des Löschens jeder Datei und jedes Unterordners zu vermeiden. Beachten Sie die HauptstadtR
.Sie können verwenden:
Dadurch werden auch die versteckten Dateien und Ordner gelöscht. Wenn sich zu viele Dateien im MYFOLDER-Verzeichnis befinden, sollten Sie stattdessen Folgendes ausführen:
quelle
meta/
Verzeichnis, daher wollte ich die xargs-Alternative ausprobieren, erhalte jedoch die folgenden Fehlermeldungen:ls: cannot access meta/.[^.]: No such file or directory ls: cannot access meta/.??*: No such file or directory rm: missing operand
bash
Shell verwenden. Die Shell muss "Klammererweiterung" und "Reguläre Ausdrücke" für Dateimuster unterstützen.Meiner Meinung nach ist es am einfachsten, das gesamte Verzeichnis einschließlich sich selbst zu löschen und dann den Ordner neu zu erstellen. Es gibt Situationen, in denen dies keine gute Lösung ist (z. B. unbeaufsichtigte Skripte oder komplexere Pipelines), Sie jedoch nicht angegeben haben, warum Sie den Ordner nicht löschen möchten.
Hoppla. Sie haben angegeben (ich habe Ihren Beitrag erneut gelesen). Nun, dennoch kann das Löschen und Neuerstellen funktionieren. Vor allem, wenn Sie Befehle miteinander verketten
Oder
quelle
Wie wäre es mit
Dadurch werden auch versteckte Dateien (die mit einem Punkt beginnen) gelöscht.
quelle
Versuchen Sie
rm -r -f filename
, mit CentOS 6.x zu arbeitenquelle
Ich empfehle diese Alternative dringend (sie entfernt auch Dateien mit Leerzeichen in Namen):
quelle