it-swarm.com.de

Was bedeutet das ~ in einem Dateipfad?

Was bedeutet der ~ in einem absoluten Dateipfad?

Ich sehe dies in der Ausgabe von Dingen wie Build-Skripten, aber der Pfad existiert nicht.

42
blade34r

Normalerweise bedeutet dies, dass das Heimatverzeichnis des Benutzers, z. ~mike/ wäre das Ausgangsverzeichnis des Benutzers mike, ~/ wäre Ihr eigenes Ausgangsverzeichnis. Es ist mir jedoch unklar, ob ~/ und ~mike/ als absolut oder relativ angesehen werden sollen. es scheint von der gegebenen Definition abzuhängen (wenn jemand eine Referenz vorlegen kann, bitte einen Kommentar posten).

Beachten Sie, dass ich hier von Unix-basierten Systemen spreche.

Siehe http://en.wikipedia.org/wiki/Home_directory#Unix

35
Adrian Mouat

Tatsächlich sind beide Antworten von Adrian Mouat und studiohack richtig.
In Betriebssystemen mit eingeschränkter Namenskonvention (ältere Version von Windows/DOS usw.) bedeutet dies einen langen Namen.

e.g. "c:\program files\" is equivalent to "c:\progra~1\"

In einigen Betriebssystemen (namentlich Unix) bedeutet dies Heimatverzeichnis (und kann als absoluter, aber nicht kanonischer Pfad angesehen werden).
e.g."/a/vol01/usr/mike/" might be shortened to "~/mike/"
* wobei 'usr' das Heimatverzeichnis ist.

21
Eran

Auf vielen Dateisystemen enthält ein Dateiname eine Tilde (~) in jeder Komponente des Namens, die zu lang ist, um den 8.3-Namensregeln zu entsprechen.

Quelle: Benennen von Dateien, Pfaden und Namespaces - Kurze und lange Namen - MSDN

(Teilweise die Seite runter ...)

12
studiohack

Und wenn Sie ASP.NET programmieren, bedeutet dies die oberste Ebene der Website. Anstatt mit ../../images/some_image.jpg zu navigieren (und Ihre Verschachtelungsebene falsch zu machen!), können Sie einfach ~/images/some_image.jpg sagen

5
noonand

Hier sind ein paar Tipps, die Ihnen helfen können, es besser herauszufinden:

$ readlink -f ~

$ echo $HOME

Hinweis: $ ist eine Konvention zum Angeben der Benutzerbefehlszeile. Es ist kein Teil der Befehle.

1
vtest