如果我有一个通过符号链接(symbolic link)执行的 python 脚本,有没有办法找到脚本的路径而不是符号链接(symbolic link)?我尝试使用 this 中建议的方法问题,但它们总是返回符号链接(symbolic link)的路径,而不是脚本。
例如,当这被保存为我的“/usr/home/philboltt/scripts/test.py”时:
#!/usr/bin/python
import sys
print sys.argv[0]
print __file__
然后我创建这个符号链接(symbolic link)
ln -s /usr/home/philboltt/scripts/test.py /usr/home/philboltt/test
并使用
执行脚本/usr/home/philboltt/test
我得到以下输出:
/usr/home/philboltt/test
/usr/home/philboltt/test
谢谢! 菲尔
最佳答案
你想要 <a href="http://docs.python.org/library/os.path.html#os.path.realpath" rel="noreferrer noopener nofollow">os.path.realpath()</a>
功能。
关于python - 从 linux 上的符号链接(symbolic link)执行时如何查找正在运行的脚本的文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2548936/