Was bedeutet das ~ in einem Dateipfad?

Was bedeutet ~ in einem absoluten Dateipfad?

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

 45
Author: Jens Erat, 2010-11-16

6 answers

Normalerweise bedeutet dies, dass das Home-Verzeichnis des Benutzers, z. B. ~mike/, das Home-Verzeichnis des Benutzers mike und ~/ Ihr eigenes Home-Verzeichnis ist. Es ist mir jedoch unklar, ob ~/ und ~mike/ als absolut oder relativ betrachtet werden sollten; es scheint von der angegebenen Definition abzuhängen (wenn jemand eine autorative Referenz finden kann, posten Sie bitte einen Kommentar).

Beachten Sie, dass ich hier über Unix-basierte Systeme spreche.

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

 35
Author: Adrian Mouat,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2010-11-16 11:10:13

Tatsächlich sind beide Antworten von Adrian Mouat und studiohack wahr.
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 (nämlich Unix) bedeutet dies home-dir (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.

 23
Author: Eran,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2010-11-16 22:05:19

Auf vielen Dateisystemen enthält ein Dateiname eine Tilde (~) innerhalb jeder Komponente des Namens, die zu lang ist, um die Benennungsregeln einzuhalten.

Quelle: Naming Files, Paths, and Namespaces - Kurze vs. Lange Namen - MSDN -

(teilweise auf der Seite...)

 12
Author: studiohack,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2010-11-16 10:33:58

Und wenn du es tust ASP.NET programmierung es bedeutet, die oberste Ebene der Website; anstatt Navigation mit ../../images/some_image.jpg (und immer Ihre Niststufe falsch!) sie können einfach ~/images/some_image sagen.- jpg -

 5
Author: noonand,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2010-11-16 13:20:48

Hier sind ein paar Hinweise, die dir helfen können, es besser herauszufinden:

$ readlink -f ~

$ echo $HOME

Hinweis: $ ist eine Konvention zur Angabe der Eingabeaufforderung für die Befehlszeile des Benutzers.

 1
Author: vtest,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2010-11-16 11:59:50

Mehr über Windows:

  1. Wenn der versteckte Dateiname mit ' ~ ' beginnt, verarbeitet Windows Explorer ihn als versteckte Systemdatei. Weitere Informationen in Warum werden versteckte Dateien mit einer führenden Tilde als super-hidden behandelt?

  2. Wenn der kurze Datei - / Verzeichnisname ' ~ ' enthält (wie "c:\ololoo~1") es ist möglich, dass der lange Name dieser Datei / dieses Verzeichnisses die maximale Länge überschreitet (MAX_PATH=260). Entwickler sollten workarond dies mit"\\?\ "präfix (auch unter neueren Windows 10 als Benutzer können deaktivieren "- >260"-lange Pfade unterstützen mit LongPathsEnabled Registrierungs-parameter oder mit "Enable NTFS long paths" group policy). Beispiel für diese Problemumgehung mit C# finden Sie in ZetaLongPaths Bibliotheksquellen.

 0
Author: oshatrk,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2019-06-20 08:57:43