脚本从 shell 中执行为./oximeter
。
该脚本oximeter
有 5 个命令:
python3 ~/Documents/oximeter/3211ipod.py
ls -l
pwd
cd ~/Documents/oximeter/
pwd
Python 脚本按预期运行。我希望脚本能够更改目录,如命令 #4 所示。当控制权返回给用户时,目录保持不变。
第二个pwd
返回所需的目录,但是当控制权返回给用户时,pwd
表明该目录不是~/Documents/oximeter
。
为什么会这样?是否有一个更强大的命令可以为用户改变目标目录?
这是在 Ubuntu 20.04 中。
答案1
因为你只告诉 python3 运行 .py 脚本从一个目录,你必须先到cd
那里
(例如在脚本中:)cd $(dirname ~/myfolder/myscript.py) ;python3 myscript.py
您可以使用以下命令获取 Python 脚本在 Python 中的位置:
print('abspath: ', os.path.abspath(__file__))
print('abs dirname: ', os.path.dirname(os.path.abspath(__file__)))