Python -- 使用指定的 shells 执行 shell 命令
Python -- execution shell commands using a designated shells
所以我知道 python 可以使用 subprocess.call()
执行 shell 命令
但我通常使用 tcsh,并且我有一个 .tcshrc,它加载了很多环境变量以使我的 shell 舒适。
如何让我的 subprocess.call() 意识到——在 tcsh 中执行我的命令,加载我的 .tcshrc 文件?
像这样显式调用 tcsh 来执行相应的 cmd(将 env
替换为您特定的 cmd arg 列表:
~/> cat tst.py
#!/usr/bin/python -u
import subprocess
subprocess.call(['/usr/bin/tcsh', '-c', 'env'])
~/> ./tst.py | grep ^DISPLAY
DISPLAY=:0
~/>
所以我知道 python 可以使用 subprocess.call()
执行 shell 命令但我通常使用 tcsh,并且我有一个 .tcshrc,它加载了很多环境变量以使我的 shell 舒适。
如何让我的 subprocess.call() 意识到——在 tcsh 中执行我的命令,加载我的 .tcshrc 文件?
像这样显式调用 tcsh 来执行相应的 cmd(将 env
替换为您特定的 cmd arg 列表:
~/> cat tst.py
#!/usr/bin/python -u
import subprocess
subprocess.call(['/usr/bin/tcsh', '-c', 'env'])
~/> ./tst.py | grep ^DISPLAY
DISPLAY=:0
~/>