[英]Can I echo local variable via ssh into remote file?
我嘗試在文件末尾寫入變量,但將其寫入本地服務器的 STDOUT 一些代碼:
$num = <STDIN>
my $cmd = "echo $dep_keys{$num} >> /root/1";
#$ssh->system({stdin_data =>$dep_keys{$num} },"echo >> /root/1");
#$ssh->error die "Couldn't establish SSH connection: ". $ssh->error;
#$ssh->system("echo $dep_keys{$num} >> /root/1");
$ssh->system($cmd);
我希望該文件將在文件末尾包含新行。
use String::ShellQuote qw( shell_quote );
defined( my $num = <STDIN> )
or die("Invalid input");
chomp($num);
defined($dep_keys{$num})
or die("Invalid input");
my $cmd = shell_quote('printf', '%s\n', $dep_keys{$num}) . ' >>/root/1';
$ssh->system($cmd);
修復:
$num
中刪除尾隨換行符(如果有)。echo
顯,因為echo
顯使 output 某些字符串成為不可能。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.