2017-09-25 164 views
0
#!/usr/bin/env python3.5 

import subprocess 

import os 

command=r'ssh <some-server> "(echo \"import os\" ; echo \"for r,d,f in os.walk('/etc/'): print (r,len(f))\")| python"' 

ssh=subprocess.call(["bash","-c","{0}".format("command")]) 
print(ssh) 

我试图运行上面的代码和代码提供了以下错误:Python代码从远程服务器获取文件数

Traceback (most recent call last): File "./test_filelist.py", line 11, in command=r'ssh "(echo \"import os\" ; echo \"for r,d,f in os.walk('/etc/'): print (r,len(f))\")| python"' NameError: name 'etc' is not defined

如何解决这个问题,有什么事,我需要逃脱。提前致谢 。

回答

0

你是不是逃避正确的os.walk('/etc/')

尝试用:

os.walk(\"/etc/\") 
+0

现在的错误消失,但由于某些原因的代码似乎没有给出O/P。 –