~
绝对文件路径是什么意思?
我在构建脚本之类的输出中看到了这一点,但是路径不存在。
答案1
通常,它意味着用户的主目录,例如,~mike/
将是用户mike
的主目录,~/
将是您自己的主目录。但是,我不清楚~/
和是否~mike/
应该被视为绝对的或相对的;这似乎取决于给出的定义(如果有人能提出权威的参考,请发表评论)。
请注意,我这里谈论的是基于 Unix 的系统。
答案2
实际上,Adrian Mouat 和 studiohack 的答案都是正确的。
在命名约定有限的操作系统(旧版本的 Windows/DOS 等)中,它表示一个长名称。
e.g. "c:\program files\" is equivalent to "c:\progra~1\"
在某些操作系统(即 Unix)中,它意味着主目录(可能被视为绝对路径但不是规范路径)。
e.g."/a/vol01/usr/mike/" might be shortened to "~/mike/"
* 其中“usr”是主目录。
答案3
答案4
有关 Windows 的更多信息:
如果隐藏文件名以“~”开头,则 Windows 资源管理器会将其作为系统隐藏文件处理。更多信息为什么以波浪号开头的隐藏文件会被视为超级隐藏文件?
如果短文件/目录名称包含“~”(如“c:\ololoo~1”),则此文件/目录的相应长名称可能会超过最大长度(MAX_PATH=260)。开发人员应使用“\\?\”前缀解决这个问题(即使在较新的 Windows 10 上,因为用户可以使用
LongPathsEnabled
注册表参数或“启用 NTFS 长路径”组策略禁用“>260”长路径支持)。使用 C# 的此解决方法的示例可在以下位置找到ZetaLongPaths 库源。