我有一个Perl脚本,它使用openssh访问远程机器并在该远程机器中执行Perl脚本。
现在问题是需要在远程机器中执行的脚本是一个交互式脚本,并期望在执行期间通过STDIN输入一些。
有人可以帮助我实施这个场景。
我正在放置我迄今已实施的代码片段。
my $ssh = Net::OpenSSH->new("$host", timeout => 60) or die "unable to connect to remote host: ". $ssh->error;
$ssh->system("chmod 755 abc.pl");
my $output=$ssh->capture("./abc.pl") or die "remote command failed: " . $ssh->error;
答案 0 :(得分:1)
如果您自动完成执行,那么您将无法向用户请求输入。您必须手动运行脚本,否则您必须修改远程服务器上的脚本以接受来自远程执行的变量。