使用Python、SSH、subprocess和find -print0打印远程服务器文件内容
我想用Python的subprocess模块和ssh连接到一个远程服务器,然后用'find . -print0'命令列出一个目录里的文件,并逐行打印出每个文件的内容,同时避免内存问题。有没有什么好主意?
2 个回答
0
你可以看看 Fabric,它是用Python写的,能够很好地处理远程主机和请求者之间的大量数据传输。
编辑:
如果你想打印出文件的内容,可以试试这个:
find . -exec cat {} \;
然后,你需要通过ssh把它发送到你的远程主机上。
ssh user@host 'find . -exec cat {} \;'
接着,用一个 subprocess 调用来执行这个操作。
1
我建议用bash,不过如果你真的想用python的话,可以试试这个链接:http://www.lag.net/paramiko/。这个是一个用于ssh的客户端。如果你了解ssh的话,其实就是在另一台机器上执行一些命令。