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系统下使用。