Python Can';不要打开sh文件
我正在尝试从脚本python执行一个sh文件 我的python脚本Python Can';不要打开sh文件,python,shell,Python,Shell,我正在尝试从脚本python执行一个sh文件 我的python脚本 os.system('sh run.sh') 我的sh文件 echo 'The house is blue' | /opt/palavras/por.pl > output.txt 错误: sh:0:无法打开跑步。sh 如何修复它?确保您的bash脚本具有正确的权限(即它是可执行的)。在终端运行中: chmod +x run.sh 然后重试(假设run.sh与python脚本位于同一目录中) 我也不相信这会从终端运行
os.system('sh run.sh')
我的sh文件
echo 'The house is blue' | /opt/palavras/por.pl > output.txt
错误:
sh:0:无法打开跑步。sh
如何修复它?确保您的bash脚本具有正确的权限(即它是可执行的)。在终端运行中:
chmod +x run.sh
然后重试(假设run.sh
与python脚本位于同一目录中)
我也不相信这会从终端运行,因为您必须按顺序运行该文件。尝试:
os.system('sh chmod +x run.sh|./run.sh')
相反
请参阅:有关运行sh文件和使用在shell中按顺序运行的
|
的详细信息。您可能希望使用绝对路径或相对于运行python程序的目录的路径。目前,sh
将在其$PATH
中查找run.sh
,这可能不同于您的执行上下文的$PATH
。因为我认为您需要使用“or”
操作符以shell顺序运行os.system('chmod+x run.sh')
,os.system('./run.sh')
不幸地不能做到这一点,因为这相当于打开两个终端。
os.system('sh chmod +x run.sh|./run.sh')