Vij*_*jay 8 python ssh sftp glob paramiko
import paramiko
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect('hostname', username='test1234', password='test')
path = ['/home/test/*.txt', '/home/test1/*.file', '/home/check/*.xml']
for i in path:
for j in glob.glob(i):
print j
client.close()
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用 列出远程服务器上的通配符文件glob.glob。但glob.glob()不工作。
使用 Python 2.6。
远程服务器包含这些文件:/home/test1/check.file, /home/test1/validate.file,/home/test1/vali.file
任何人都可以请帮助解决这个问题。
Mar*_*ryl 10
该glob不会神奇启动与远程服务器的工作,只是因为你有实例化SSHClient之前。
您必须使用 Paramiko API 来列出文件,例如SFTPClient.listdir:
import fnmatch
Run Code Online (Sandbox Code Playgroud)
sftp = client.open_sftp()
for filename in sftp.listdir('/home/test'):
if fnmatch.fnmatch(filename, "*.txt"):
print filename
Run Code Online (Sandbox Code Playgroud)
如果更适合您的需要,您还可以使用正则表达式进行匹配。请参阅使用 Paramiko 的 SFTPClient 在远程路径中使用通配符。
旁注:不要使用AutoAddPolicy. 这样做你会失去安全感。请参阅Paramiko“未知服务器”。
| 归档时间: |
|
| 查看次数: |
12276 次 |
| 最近记录: |