我查看了使用内置的 find 模块,它似乎无法连接到 sftp。还尝试了 get_url 模块,它不列出文件,似乎它只复制文件。
我可以在 shell 中使用 lftp。但是是否有一个 ansible 模块可以使用私钥连接到 sftp 服务器并列出文件?
如果不需要使用
Ansible
,可以尝试fabric。
我将使用
ssh
连接,因为我认为不需要 sftp
。
from fabric import Connection
server = Connection(
'192.168.0.1',
user='root'
)
查看根目录下的文件列表。
server.run('ls')
进入测试目录并查看文件列表。
server.run('cd test && ls')
将文件从远程服务器复制到本地PC。
server.get('test.txt')
这意味着您可以在远程服务器上执行几乎任何 Linux 命令。