在我的macOS中,我使用wget下载www.test.com索引页面。
然后我有下面的python代码:
#-*- coding:utf-8 -*-
import subprocess
url = "https://www.test.com"
subprocess.call("ps -ef | grep wget | grep {0}  | awk '{print $2}'".format(url), shell=True)当我运行它时,我会遇到这样的问题:
subprocess.call("ps -ef | grep wget | grep {0}  | awk '{print $2}'".format(url), shell=True)
KeyError: 'print $2'我将subprocess.call()转换为os.system(),仍然会遇到这个问题。
发布于 2020-10-16 14:12:29
您的错误不是由子进程引起的,而是由字符串格式引起的。
"ps -ef | grep wget | grep {0}  | awk '{print $2}'".format(url)您可以使用%s来形成字符串。
"ps -ef | grep wget | grep %s  | awk '{print $2}'"%(url)https://stackoverflow.com/questions/64386464
复制相似问题