繁体   English   中英

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

[英]Running Custom Shell Command from Python Script inside Docker Container

我正在尝试从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('whois {}'。format(domain),shell = True)并成功

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM