Python 在subprocess.check\u输出中包含字符串变量

Python 在subprocess.check\u输出中包含字符串变量,python,Python,我正在尝试执行以下命令: result = subprocess.check_output("curl -o '/Users/user/Desktop/workbook.twb' -u xxx:yyy https://bitbucket.xyz.com/rest/api/1.0/projects/xxx/repos/xxx/raw/yyy/test_folder/test.twb", shell=True) 在上面的命令中,我需要将/Users/user/Desktop/workbook.tw

我正在尝试执行以下命令:

result = subprocess.check_output("curl -o '/Users/user/Desktop/workbook.twb' -u xxx:yyy https://bitbucket.xyz.com/rest/api/1.0/projects/xxx/repos/xxx/raw/yyy/test_folder/test.twb", shell=True)
在上面的命令中,我需要将/Users/user/Desktop/workbook.twb替换为一个字符串变量(例如filePath)和另一个变量(例如repo_path)。如何实现这一点

我尝试了多种方法,但都出现了格式错误。

类似的情况:

param_a=“foo”
param_b=“bar”
查询url=”http://some.host/{a} /{b}.xml”。格式(a=param_a,b=param_b)
打印(查询url)以了解发生了什么。
command=“curl-o'{output\u file}'{query\u url}'”。格式(
output_file=“/Users/me/foo bar”,
query\u url=query\u url
)
打印(命令)
结果=子进程。检查输出(命令,shell=True)
让每一步都变小。如有疑问,请打印中间值。

类似的内容:

param_a=“foo”
param_b=“bar”
查询url=”http://some.host/{a} /{b}.xml”。格式(a=param_a,b=param_b)
打印(查询url)以了解发生了什么。
command=“curl-o'{output\u file}'{query\u url}'”。格式(
output_file=“/Users/me/foo bar”,
query\u url=query\u url
)
打印(命令)
结果=子进程。检查输出(命令,shell=True)

让每一步都变小。如果有疑问,请打印中间值。

为什么要麻烦运行curl命令?我是说你可以。但您也可以只使用请求模块。。。在我看来,代码会更干净,而且在没有安装curl的机器上也能工作为什么还要运行curl命令呢?我是说你可以。但您也可以只使用请求模块。。。在我看来,代码会更干净,而且它也可以在没有安装curl的机器上工作。不使用
shell=True
避免shell转义参数:
result=subprocess.check_output([“curl”,“-o”,output_file,query_url])
。这就像一个符咒。我缺少了前面提到的形成命令的逻辑。感谢lota不使用
shell=True
避免shell转义参数:
result=subprocess。检查输出([“curl”,“-o”,输出文件,查询url])
。这很有魅力。我缺少前面提到的形成命令的逻辑。非常感谢