python - 如何知道调用 shell 目录的路径并在我的 python 可执行文件中使用它
问题描述
基本上,我想使用 shell 从任何地方调用 python 程序,所以我添加了一个 shebang 并将其复制到/usr/local/bin
具有可执行权限。python 程序接受一个命令行参数,它是输入文件的相对路径。
我被困在这里,我不知道该怎么做才能获得shell的绝对路径。我假设一旦我以某种方式获得绝对路径,我就可以sys.argv[1]
用来获取文件的输入相对路径(我将附加到 shell 工作目录的绝对路径),但请纠正我它不起作用。
解决方案
您可以通过 打印工作目录os.environ['PWD']
。内容your_script.py
:
#!/usr/bin/python3.5
import os
print(os.environ['PWD'])
用法:
sanyash@sanyash-ub16:/etc/nginx$ your_script.py
/etc/nginx
sanyash@sanyash-ub16:/etc/nginx$