使用perl实现scp批量分发

时间:2023-03-09 00:58:21
使用perl实现scp批量分发

perl模块Net::SCP::Expect批量下发文件

用Net::SSH::Perl和Net::SCP::Expect写部署脚本

scp分发文件的perl脚本

Perl SCP操作

#!/usr/bin/perl

use Net::SCP::Expect;
my $pc_ip="192.168.233.135";
my $pc_passwd="test";
my $pc_user="test";
my $pc_ssh_port="";
eval{
my $scpe = Net::SCP::Expect->new(host=>$pc_ip,user=>$pc_user,password=>$pc_passwd,port =>$pc_ssh_port,auto_yes=>);
#$scpe->scp("$pc_ip:/home/autotest/log/$log_file","$ENV{WORKSPACE}/MPLS_Test_Result.html");
$scpe->scp("/home/huanghongbo/testlogs/test.log","$pc_ip:/home/huanghongbo/testlogs/"); };

复制整个目录

在Net-Scp-Except中的readme中有此一句

recursive - Set to 1 if you want to recursively copy entire directories.

#!/usr/bin/perl

use Net::SCP::Expect;

my $pc_ip="192.168.233.135";
my $pc_passwd="test";
my $pc_user="test";
my $pc_ssh_port=""; eval{
my $scpe = Net::SCP::Expect->new(host=>$pc_ip,user=>$pc_user,password=>$pc_passwd,port =>$pc_ssh_port,auto_yes=>,recursive=>);
#$scpe->scp("$pc_ip:/home/autotest/log/$log_file","$ENV{WORKSPACE}/MPLS_Test_Result.html");
$scpe->scp("/home/huanghongbo/class/","$pc_ip:/home/huanghongbo/class/"); };