1
我的.bat文件駐留在窗口中,我想通過ssh從Linux調用它。我已經在Windows中安裝了cygwin,並且能夠將ssh安裝到機器上。我想寫一個Perl腳本來連接到Windows服務器並執行.bat文件。ssh到Windows機器和執行bat文件
我的.bat文件駐留在窗口中,我想通過ssh從Linux調用它。我已經在Windows中安裝了cygwin,並且能夠將ssh安裝到機器上。我想寫一個Perl腳本來連接到Windows服務器並執行.bat文件。ssh到Windows機器和執行bat文件
去爲這種任務的方式是Net::SSH
例。 :
use Net::SSH qw(ssh issh sshopen2 sshopen3);
ssh('[email protected]', $command);
issh('[email protected]', $command);
ssh_cmd('[email protected]', $command);
ssh_cmd({
user => 'user',
host => 'host.name',
command => 'command',
args => [ '-arg1', '-arg2' ],
stdin_string => "string\n",
});
sshopen2('[email protected]', $reader, $writer, $command);
sshopen3('[email protected]', $writer, $reader, $error, $command);
使用任何:
例如:
use Net::SSH::Any;
my $ssh = Net::SSH::Any->new($host, user => $user, password => $password);
my @output = $ssh->capture('c:\foo.bat');
我累的Net :: SSH ::任何,但它引發以下錯誤。在/ usr/lib/perl5/site /Net/SSH/Any.pm中使用未初始化的值(。)或字符串行388. (在清理中)在/ usr/lib/perl5中轉到未定義的子例程&main :: DESTROY/.8.8/Net/SSH/Any.pm line 388. – Leo
您能描述一下您的(本地)環境嗎?操作系統,perl和模塊版本? – salva