如何 运行 Bash 带有参数的 Python 脚本文件
How to run a Bash Script file in Python with arguments
我正在寻找 运行 以下 bash 脚本 python:
sed -n -e '/SCN/,/^\s*$/p' $@ > Junction-Links.txt
bash 脚本保存为 ext-jun-links.sh 我想 运行 它使用 Python 传递文件名代替 $ @.
我目前正在尝试使用以下代码来执行此操作:
import subprocess
from subprocess import call
subprocess.run(["./ext-jun-links.sh","NETL1405.TXT"], shell=True)
但是,这给了我以下错误:
'ext-jun-links.sh' is not recognized as an internal or external command, operable program or batch file.
有没有办法解决这个错误? bash 文件 运行 在将 PowerShell 与以下代码一起使用时没问题,所以这不是问题所在:
bash ext-jun-links.sh 'NETL1405.TXT'
我认为这是因为您正在尝试通过 PowerShell 执行 bash 脚本。
bash ext-jun-links.sh 'NETL1405.TXT'
这行得通,因为您将 ext-jun-links.sh 和 'NETL1405.TXT' 作为参数提供给 bash。
尝试:
subprocess.run(["bash", "./ext-jun-links.sh","NETL1405.TXT"], shell=True)
我正在寻找 运行 以下 bash 脚本 python:
sed -n -e '/SCN/,/^\s*$/p' $@ > Junction-Links.txt
bash 脚本保存为 ext-jun-links.sh 我想 运行 它使用 Python 传递文件名代替 $ @.
我目前正在尝试使用以下代码来执行此操作:
import subprocess
from subprocess import call
subprocess.run(["./ext-jun-links.sh","NETL1405.TXT"], shell=True)
但是,这给了我以下错误:
'ext-jun-links.sh' is not recognized as an internal or external command, operable program or batch file.
有没有办法解决这个错误? bash 文件 运行 在将 PowerShell 与以下代码一起使用时没问题,所以这不是问题所在:
bash ext-jun-links.sh 'NETL1405.TXT'
我认为这是因为您正在尝试通过 PowerShell 执行 bash 脚本。
bash ext-jun-links.sh 'NETL1405.TXT'
这行得通,因为您将 ext-jun-links.sh 和 'NETL1405.TXT' 作为参数提供给 bash。
尝试:
subprocess.run(["bash", "./ext-jun-links.sh","NETL1405.TXT"], shell=True)