欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

linux 无需手动输入密码同时SCP多台

程序员文章站 2022-03-08 16:27:21
...

由于最近在搞发布的东西,项目上的要求linux服务器用户到我们权限比较低,可是又要同时发布多台服务器,SCP起来真是浪费青春,由于最近接触WScript.Shell,所以就想到了它。上代码:

     在window系统下新建scp.vbs,输入以下代码:

   

set sh=WScript.CreateObject("WScript.Shell")
'文件地址
'putty IP
'项目名称
sh.Run "e:\sun.vbs  10.10.10.2 mmm"
 

 

    在window系统下新建sun.vbs,输入以下代码:

set sh=WScript.CreateObject("WScript.Shell")
'注释:输入的参数
Dim par
set par= WScript.Arguments
'注释:par(0)第一个参数par(1)第二个参数
sh.Run "e:\putty.exe username@"+par(0)
WScript.Sleep 7000
sh.SendKeys "password{ENTER}"
WScript.Sleep 3000
sh.SendKeys "scp ROOT_"+par(1)+".war  10.10.10.3:/home/username{ENTER}"
WScript.Sleep 2000
sh.SendKeys "password{ENTER}"
WScript.Sleep 3000
sh.SendKeys "scp ROOT_"+par(1)+".war  10.10.10.3:/home/username{ENTER}"
WScript.Sleep 2000
sh.SendKeys "password{ENTER}"
WScript.Sleep 3000
sh.SendKeys "scp ROOT_"+par(1)+".war  10.10.10.4:/home/username{ENTER}"
WScript.Sleep 2000
sh.SendKeys "password{ENTER}"
WScript.Sleep 3000

 这里使用到了putty.exe,关于它的文章太多这里不做过多解释。执行时只需要在window下双击scp.vbs等待即可,再注意一点这个命令只能在Window系统下使用。