在python脚本中找不到Shell命令

2024-10-01 07:40:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我用python脚本源代码dotcshrc文件:操作系统('/bin/csh dotcshrc')并且它可以工作,但是当我想使用这个命令时,我已经通过源命令将它放入了env中,比如操作系统('ikvalidate mycase'),linux c抱怨:命令没有找到了。 但当我用手做的时候,一切都很顺利。 问题在哪里?在


Tags: 文件命令env脚本bin源代码linuxcsh
2条回答

os.system在其独立的环境中运行每个命令。如果您在一个os.system调用中查找某些内容,则后续调用将看不到这一点,因为它们是从新的shell环境开始的。如果您有类似于上述的依赖项,则可以将其组合到一个调用中:

os.system(‘/bin/csh "dotcshrc; ikvalidate mycase"’)

如果在linux中有一个命令,比如ls,并且希望在python代码中使用它,请执行以下操作:

import os
ls = lambda : os.system('ls')
# This effectively turns that command into a python function.
ls() # skadoosh!

输出为:

^{pr2}$

相关问题 更多 >