我正在尝试使用 python 脚本多次调用外部命令,每次都使用不同的变量。
我看到有人建议使用 subprocess.call 来执行此操作,但是我找到的所有文档都没有解释如何传递此函数变量(例如来自列表)。
我尝试了许多不同的格式,我认为替换是最好的,但似乎该函数不会接受该变量。我试图开始工作的代码是:
#!/usr/bin/python
domain_list = ["google.com", "google.ie"]
from subprocess import call
for x in domain_list:
print x
cmd_list = ['dig', '+short', '%s'] %x
call(cmd_list, shell=True)
这是失败的:
Traceback (most recent call last):
File "./dnscheck.py", line 16, in <module>
cmd_list = ['dig', '+short', '%s'] %arg
TypeError: unsupported operand type(s) for %: 'list' and 'str'
真的,我希望能够传递一堆不同的域(在列表中定义)来挖掘和接收这些域的 IP。
我刚开始使用python,如果这是非常基本的,很抱歉!