我正在使用以下命令
rsync -avze ssh myUser@REMOTE_SERVER:/REMOTE_PATH/ LOCAL_PATH
它要求输入密码。是否可以通过任何脚本传递密码?我不想使用ssh
钥匙。
答案1
您已将您的问题标记为perl
...
使用网络::OpenSSH:
#!/usr/bin/perl
use strict;
use Net::OpenSSH;
my $ssh = Net::OpenSSH->new(user => $user, password => $password);
$ssh->rsync_get({verbose => 1}, $remote_directory, $local_directory)
or die $ssh->error;
答案2
我认为 sshpass 会满足您的需要:
https://www.cyberciti.biz/faq/noninteractive-shell-script-ssh-password-provider/