题
我是Web应用程序开发NOOB。我的功能可以打开文件并读取它。不幸的是,测试和生产服务器之间的目录结构不同。有人告诉我“使用相对于〜的路径”。不过,我无法在“〜”上找到任何资源!
如何在路径上下文中使用tilde角色?
编辑:这是在Python中。我解决了问题,使用 OS.PATH.Expanduser('〜/path/in/home/home/区域').
解决方案
是你的 $HOME
unix中的var,通常是 /home/username
.
“您的家”是指执行命令的用户的家 cd ~/MyDocuments/
是 cd /home/user_executing_cd_commnd/MyDocuments
其他提示
除非您正在编写外壳脚本或使用其他知道替代价值的语言 $HOME
为了 ~
, ,文件路径中的Tildes没有特殊的含义,将被视为任何其他非特殊字符。
如果您正在编写Shell脚本,则除非将其作为参数中的第一个字符出现,否则不会解释它们。换句话说, ~/file
会变成 /path/to/users/home/directory/file
, , 但 ./~/file
将从字面上解释(即 file
在一个子目录中 .
叫 ~
").
在URL中使用,将Tilde解释为用户主目录的速记(例如 http://www.foo.org/~bob
)是从UNIX借来的约定。实现完全是服务器特定的,因此您需要检查Web服务器的文档,以查看其是否具有特殊含义。
如果您使用的是pathlib进行文件名,则可以在Windows和Linux上使用(我来这里是Windows答案):
python
from pathlib import Path
p = Path('~').expanduser()
print(p)