如何使用scp自动执行密码输入?

时间:2019-10-17 06:01:04

标签: python pexpect

我为此尝试过

这就是我想要做的。

使用scp复制> 1gig文件到网络设备。我为此使用以下代码。

child = pexpect.spawn(f'scp /folder/images/{image_name} {device_name}:/location:') child.expect("password:") child.sendline(pwd) child.expect(pexpect.EOF)

此代码停留在下面的行中。

2019-10-17 05:42:51,309 - file_sync.py - INFO - Copying the <imageName> to <Device_name>

它不显示密码提示,似乎所有内容都在后台静默发生,几秒钟后,我在控制台上看到超时期望错误。

是否有使其互动的方式(类似于子流程)或任何其他可以交互输入密码并在控制台上查看文件传输进度的方法?

child = pexpect.spawn(f'scp /folder/images/{image_name} {device_name}:/location:')
child.expect("password:")
child.sendline(pwd)
child.expect(pexpect.EOF)

0 个答案:

没有答案