In Bash ist alles, was ich weiß, das
rmdir directoryname
entfernt das Verzeichnis jedoch nur, wenn es leer ist. Gibt es eine Möglichkeit, das Entfernen von Unterverzeichnissen zu erzwingen?
In Bash ist alles, was ich weiß, das
rmdir directoryname
entfernt das Verzeichnis jedoch nur, wenn es leer ist. Gibt es eine Möglichkeit, das Entfernen von Unterverzeichnissen zu erzwingen?
Antworten:
Der folgende Befehl erledigt das für Sie. Seien Sie jedoch vorsichtig.
rm -rf directoryname
rm: invalid option -- rFehlermeldung, wenn ich versuche, ein Verzeichnis mit rm -r <Verzeichnisname> zu löschen.
rm -rf directorynamecoz zu verwenden, da Sie nicht möchten, dass Ihr Skript die Ausführung anhält, da es auf Benutzereingaben wartet. Natürlich müssen Sie darauf achten, dass das Löschen des Verzeichnisses keinen Schaden anrichtet.
Wenn dies rm -rf directorynamefehlschlägt, versuchen Sie es mit rm -R -f directoryname, oder rm --recursive -f directoryname.
Wenn Sie damit kein Glück haben, sollten Sie in Betracht ziehen, rm neu zu installieren oder die Shells zu wechseln.
man rm, um meine Optionen zum rekursiven Löschen und die Force- Optionen anzuzeigen .
rmManpage aufgelistet -r? Was tut es? (Versuchen Sie es in einem Verzeichnis, das Sie nur zu Testzwecken erstellt haben und in dem sich nur Dummy-Dateien (und möglicherweise Unterverzeichnisse) befinden.) Welches Betriebssystem verwenden Sie?
rm -rdies nicht funktioniert, ist dies ein Problem mit dem Betriebssystem und nicht mit der Shell. (Genau genommen handelt es sich um ein Problem mit der von rmIhnen verwendeten Version. Sie können es also beheben, indem Sie eine andere Version von installieren rmoder Ihr System durchsuchen, um festzustellen, ob Sie bereits eine andere Version von rmin einem anderen Verzeichnis als haben /bin.)
man rmin meinem Terminal lief, gab es mir eine Textdatei mit dem lessText-Viewer. Ich habe im Bildlauf einen eingerückten Eintrag mit einem Ganzen gefunden, bei dem die Optionen -R und --recursive mit der Option -r kombiniert wurden , was bedeutet, dass alle diese Argumente identisch sind.
sudo rm -r directoryName ? Die ungeschriebenen Regeln der Grundbefehle sehen vor, -rdass ein Programm rekursiv auf jeder Datei Ihres Dateisystems ausgeführt werden kann (von wo immer Sie wollen!) Und dass -f Dinge mit Nachdruck tut, auch wenn es gefährlich ist . 'cd', 'mv', 'ls' halten dieses Prinzip meistens für richtig. ls -r /wird ein Duzie sein und cp -rf / /dev/nullalles auf Ihrem Dateisystem zerstören. <- Führe diesen Befehl niemals aus!
rm -r directoryname.