GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Mkdir:Verzeichnis kann nicht erstellt werden:Keine solche Datei oder Verzeichnis?

Für diese Frage gibt es hier bereits Antworten :Warum erweitert sich die Tilde (~) nicht in doppelte Anführungszeichen?

(4 Antworten)
Vor 3 Jahren geschlossen.

Was ist falsch an den folgenden Befehlen?

$ var1="~/Music/$(date +%d%m%y)"
$ echo "$var1"
~/Music/240118
$ mkdir "$var1"
mkdir: cannot create directory ‘~/Music/240118’: No such file or directory

Allerdings

$ mkdir ~/Music/240118

funktioniert.

Ich hätte nie gedacht, dass ich nach Jahren der Bash-Nutzung solche Fragen stellen würde…

Akzeptierte Antwort:

Die Tilde-Erweiterung funktioniert nicht, nachdem die Variable erweitert wurde, also wenn Sie eine wörtliche Tilde in var einfügen , wird es als wörtliche Tilde zu mkdir enden . (Beachten Sie, wie die Fehlermeldung von mkdir enthält eine wörtliche Tilde, nicht den tatsächlichen Pfad Ihres Home-Verzeichnisses.)

Und da Sie die Tilde in der Aufgabe in Anführungszeichen setzen, wird sie dort auch nicht erweitert. Wenn es nicht in Anführungszeichen steht, tut es:

$ var="~/Music"; echo $var
~/Music
$ var=~/"Music"; echo $var
/home/me/Music

Natürlich können Sie auch einfach $HOME verwenden stattdessen:

$ var="$HOME/Music"; echo $var
/home/me/Music

Linux
  1. 5 Beispiele zum Erstellen mehrerer Verzeichnisse in Linux

  2. ZIP-Datei erstellen und Verzeichnisstruktur ignorieren

  3. mkdir -p schlägt fehl, wenn ein Verzeichnis vorhanden ist

  4. Schwerwiegender Fehler:cuda.h:Keine solche Datei oder Verzeichnis

  5. conda source deactivate :bash:deactivate:Keine solche Datei oder Verzeichnis

So verwenden Sie den mkdir-Befehl zum Erstellen oder Erstellen eines Linux-Verzeichnisses

So erstellen Sie Verzeichnisse unter Linux (mkdir-Befehl)

So erstellen Sie ein Verzeichnis in Linux mit dem mkdir-Befehl

So erstellen Sie ein neues Verzeichnis in Linux

Linux-Fehler beim Laden gemeinsam genutzter Bibliotheken:Gemeinsam genutzte Objektdatei kann nicht geöffnet werden:Keine solche Datei oder dieses Verzeichnis

Programm mvn kann nicht ausgeführt werden error=2, Keine solche Datei oder Verzeichnis