Erstellen einer Datei über einen hängenden symbolischen Link mit vi

Erstellen einer Datei über einen hängenden symbolischen Link mit vi

Dies ist der Inhalt meiner Typescript-Datei.

/mac>ln -s non_exist ~/link
/mac>vi ~/link
Hi!
I am a link.
/mac>cat ~/link
Hi!
I am a link.
/mac>cat non_exist
cat: non_exist: No such file or directory
/mac>exit

Kann mir jemand sagen, was hier eigentlich passiert ist?

Dadurch wurde keine Datei erstellt, dafür aber Folgendes:

/mac>ln -s non_exist link
/mac>vi link
Hi!
I am a link.
/mac>cat link
Hi!
I am a link.
/mac>cat non_exist
Hi!
I am a link.
/mac>exit

Antwort1

Symbolische Links sind relative Pfade. Wenn ~/linkes sich um einen symbolischen Link zu handelt non_exist, dann ist der vollständige Pfad des Ziels des Links $HOME/non_exist. Wenn Sie ~/linkmit öffnen vi, wird die Datei mit dem Namen non_existin Ihrem $HOME-Verzeichnis und nicht in Ihrem aktuellen Verzeichnis erstellt.

verwandte Informationen