gpt4 book ai didi

python - 如何在python中执行shell命令文件

转载 作者:行者123 更新时间:2023-12-01 06:22:35 25 4
gpt4 key购买 nike

我在执行以下 shell 命令时遇到问题。我使用的是 Windows 10。我必须删除此处的用户授权并将其保留为“tktk”,因为我不希望我的授权像这样出现在此处。

curl 'https://pegasus-test.etflogic.io/portfolio/analyze' -H 'authority: pegasus-test.etflogic.io' -H 'pragma: no-cache' -H 'cache-control: no-cache' -H 'accept: application/json' -H 'authorization: tktk' -H 'user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36' -H 'content-type: application/json' -H 'origin: https://akita.etflogic.com' -H 'sec-fetch-site: cross-site' -H 'sec-fetch-mode: cors' -H 'referer: https://akita.etflogic.com/portfolio-analysis' -H 'accept-encoding: gzip, deflate, br' -H 'accept-language: en-US,en;q=0.9' --data-binary '{"portfolio":{"currency":"usd","id":"8576e266-c6f4-44fe-a6a6-9c64869b55dd","name":"test1","records":[{"locale":"US","id":"df92931e-3063-4889-8e4b-100c66f14d22","name":"SSGA SPDR S&P 500 - SSgA Active Trust","secid":549535,"size":100,"ticker":"SPY US"}],"size_type":"notional","type":"primary"}}' --compressed > /tmp/jsonpayload

我将上述命令存储在 test.sh 文件中我在执行上述 shell 命令时遇到问题。它可以在 Linux 终端上运行。但它在我的 Windows cmd 上不起作用。我需要读取上面的 url,获取 json 对象并用它做一些分析。

我尝试过:

import subprocess 
ans = subprocess.Popen(["bash",os.path.join(os.getcwd(), 'test.sh')])

这失败了。好的...

然后我尝试了...

subprocess.call(['test.sh'])

我收到错误“%1 不是有效的 Win32 应用程序”

最佳答案

我复制了你的test.sh代码写入我自己的 test.sh文件,并测试了一些不同的东西。

尝试使用os.system用于调用命令而不是 subprocess 中的方法.

这对我有用:

import os
os.system(os.getcwd() + '/test.sh')

如果您愿意os.path.join(os.getcwd(), 'test.sh')除了我这里的,你也可以使用它,没有什么大的区别。

我希望这能解决您的问题:)

关于python - 如何在python中执行shell命令文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60290374/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com