用Net::SSH::Perl和Net::SCP::Expect写部署脚本
一般写shell脚本多台服务器之间进行操作要打通密码,就是公私钥认证方式。如果用Perl的Net::SSH::Perl和Net::SCP::Expect库不需要创建公私钥,直接用原有ssh帐户就可以实现部署脚本的自动化。
安装方法:
cpan -i Net::SSH::Perl cpan -i Net::SCP::Expect
注:Net::SSH::Perl依赖gmp,我在macos上刚开始安装gmp5会报错,换gmp4就没问题。
Net::SSH::Perl:
#查看192.168.1.102服务器的/tmp目录下的文件 my $ssh = Net::SSH::Perl->new('192.168.1.102'); $ssh->login('user', 'password'); $ssh->cmd('ls -al /tmp/');
更多文档:http://search.cpan.org/~bnegrao/Net-SSH-Expect-1.09/lib/Net/SSH/Expect.pod
Net::SCP::Expect:
#将test.tar.gz文件复制到192.168.1.102服务器的/tmp目录下 my $scpe = Net::SCP::Expect->new; $scpe->login('user', ’password‘); $scpe->scp("/tmp/test.tar.gz", '192.168.1.102:/tmp/');
更多文档:http://search.cpan.org/~turnstep/Net-SSH-Perl-1.34/lib/Net/SSH/Perl.pm
相关推荐
hulao 2020-06-13
projava 2020-11-14
WanKaShing 2020-11-12
airfish000 2020-09-11
tryfind 2020-09-14
yegen00 2020-09-10
kkaazz 2020-09-03
风语者 2020-09-02
BraveWangDev 2020-08-19
lichuanlong00 2020-08-15
gsl 2020-08-15
pandaphinex 2020-08-09
yhuihon 2020-08-09
CheNorton 2020-08-02
xiangqiao 2020-07-28
hpujsj 2020-07-26
hpujsj 2020-07-26
sshong 2020-07-19
BraveWangDev 2020-07-19