我试图通过ssh执行远程命令。 所有这些都可以从ssh连接以及其他简单的cmd命令(如“ls”)中正常工作。 但是,我想使用ls和grep来存储变量(ptrn)中的值 但我总是失败。 我尝试使用:
但运气不好):
我的代码:
BuildServer = 1.2.3.4
ptrn = "abc"
cmd="ls -ltrd /export/home| grep ptrn"
ssh = subprocess.Popen(["ssh", "%s" % BuildServer, cmd],shell=False, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
print (ssh)
有人能帮我吗?在
谢谢大家。在
如果我没看错,您需要grep获取
ptrn
Python变量的内容,因此需要将其传递给grep,而不是它的名称,这在上下文中没有任何意义。在至于}将其视为单个参数。在
quote
,thisanswer提到它引用shell参数,因此{^{} 从进程中读取输出并等待它结束。在
你可以试试这些:
相关问题 更多 >
编程相关推荐