【问题标题】:bash query through Python subprocess, bash variables wont expand通过Python子进程进行bash查询,bash变量不会扩展
【发布时间】:2011-10-15 11:20:52
【问题描述】:

我正在通过 SSH 使用 subprocess 进行 bash 查询(不要问)。该查询包括使用find-exec 选项,但是,在远程目标主机上,{} 在查看查询在目标主机上实际执行的操作时不会正确展开。

例如:find / -name "hello.txt" -exec echo {} \; 其中{} 应该读作hello.txt,但它只是读作{}

那么,我在这里错过了什么?

提前致谢。

【问题讨论】:

    标签: python bash ssh subprocess


    【解决方案1】:

    如果您发布一些代码会很有帮助,但我猜您没有在子进程参数中包含shell=True,这是变量扩展所必需的。例如:

    subprocess.Popen('find / -name "hello.txt" -exec echo {} \;', shell=True)
    

    【讨论】:

    • 是的,我知道 :-) 代码在另一台机器上。但你是对的,使用shell=False
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-03-09
    • 1970-01-01
    • 1970-01-01
    • 2015-12-03
    • 1970-01-01
    相关资源
    最近更新 更多