Net::SSH::Perl モジュールを使用して、1 行で 2 つのコマンドを実行したいと考えています。
実際には、最初のコマンドはいくつかの環境変数を設定し、2番目のコマンドは、そのシェルに環境変数を設定する必要があるコマンドを実行します。
以下のコードを機能させる方法
例えば:
use Net::SSH::Perl;
my $hostname = "<<hostname>>";
my $username = "<<username>>";
my $password = "<<password>>";
my $cmd = 'export PATH= *** ; java -version';
my $ssh = Net::SSH::Perl->new("$hostname", debug=>0);
$ssh->login("$username","$password");
my ($stdout,$stderr,$exit) = $ssh->cmd("$cmd");
print $stdout;
この質問はすでにこのサイトで尋ねられていますが、答えはありません。
$ssh->cmd
2 つの呼び出しは同じセッションで呼び出されないため、複数回呼び出すことはできません。