I Erstellt einen Ordner im Desktop mit GUI namens '\' nach dem ich versucht habe, diesen Ordner mit Terminal durch Rmdir zu löschen. dann kann ich es nicht löschen. Was ist der Grund dafür ???So löschen Sie einen Ordner mit dem Namen using terminal
Antwort
Sie müssen die Zeichen für das Löschen entkommen, rmdir \\
, fügen Sie ein -v
Flag für ausführliche i.e. rmdir -v \\
$ mkdir \\
$ ls -lrt \\
total 0
$ rmdir -v \\
rmdir: removing directory, `\\'
Das Flag '-v' ist hier praktisch ++ – sjsam
Das Problem ist, dass \
ein besonderes ist Zeichen, das von der Shell abgefangen und verwendet wird ("expanded"), bevor das rmdir
-Programm es erhält. Sie müssen also das Zeichen angeben, um anzuzeigen, dass die Shell sich nicht damit anlegen sollte. Es gibt (mindestens) zwei Möglichkeiten:
rmdir \\
rmdir '\'
Hinweis auf dem zweiten: einfache Anführungszeichen, nicht doppelt (\
ist in doppelten Anführungszeichen erweitert).
Geben Sie als eine Übung, wie würden Sie ein Verzeichnis namens -\
löschen?
Sie müssen nur Bash eine Befehlszeile geben, die ein Argument einer einzelnen \
(nach Bash-Erweiterung) hat.
Die einfachste ist: rmdir '\'
Die grundlegendste ist die \
zu entkommen: rmdir \\
oder sogar in doppelten Anführungszeichen: rmdir "\\"
eine Oktal-Escape-Nummer verwenden: rmdir $'\134'
oder rmdir "$(echo -e '\0134')"
oder rmdir "$(printf '%b\n' '\134')"
einen hexadezimalen Wert verwenden: rmdir $'\x5c'
oder rmdir "$(echo -e '\x5c')"
oder rmdir "$(printf '%b\n' '\x5c')"
Geben Sie bitte die Fehlermeldung erhalten Sie, wenn zu löschen versuchen. – cdarke