从Docker容器内的Python脚本运行自定义Shell命令



我正试图从docker容器内的python脚本中运行一个自定义shell命令,并捕获输出以供以后使用。我的代码是:

def live_who_is(domain):
live_data = subprocess.check_output('whois {}'.format(domain), shell=True, stderr=subprocess.STDOUT)
print(live_data)

当我运行它时,我得到了这个错误:

Traceback (most recent call last):
File "who_is_compare_script.py", line 158, in <module>
live_who_is('google.com')
File "who_is_compare_script.py", line 149, in live_who_is
live_data = subprocess.check_output('whois {}'.format(domain), shell=True, stderr=subprocess.STDOUT)
File "/usr/local/lib/python2.7/subprocess.py", line 223, in check_output
raise CalledProcessError(retcode, cmd, output=output)
subprocess.CalledProcessError: Command 'whois google.com' returned non-zero exit status 1

如果用"ls-a"甚至"ls{}".format("-a"(替换该命令,它就可以工作了。

我将行更改为subprocess.call('hois{}'.format(domain(,shell=True(,它在中工作

最新更新