没有并行登陆怎么玩,teraterm并行登陆

之前写过怎么用powershell并行开teraterm的窗口,但是还是不满足
因为还要一个个填密码,这是很浪费时间的活
最近知道了ttl文件的用法,试着用ttl文件来代入密码,实现登陆

方法依然是用powershell
原理是
powershell写ttl文件-》然后循环ttermpro命令调用写好的ttl文件

研究出来的脚本如下

$userid="vagrant"
$passwd="vagrant"
$serverlist="amainst","anodest01","anodest02"
$cupath="C:\Users\Administrator\Desktop\python_script\testdir"
$svrindex=1
foreach ($svr in $serverlist) {
echo "connect `'$svr /ssh /auth=password /user=$userid /passwd=$passwd`'" |out-file login$svrindex.ttl -encoding utf8
ttermpro /M=$cupath\login$svrindex.ttl
$svrindex += 1
}

效果如下


20180715_184742 (1).gif

几行代码解析

# 登陆用的用户名
$userid="vagrant"
# 登陆用的密码
$passwd="vagrant"
# 登陆用的服务器列表
$serverlist="amainst","anodest01","anodest02"
# ttl文件的路径,之前文章说过,要绝对路径,我建议要执行的时候创建一个新目录
$cupath="C:\Users\Administrator\Desktop\python_script\testdir"
# 文件名区分
$svrindex=1
foreach ($svr in $serverlist) {
# 要注意这个输入必须要制定编码,不然用echo 直接重定向文件是用不了的
echo "connect `'$svr /ssh /auth=password /user=$userid /passwd=$passwd`'" |out-file login$svrindex.ttl -encoding utf8
ttermpro /M=$cupath\login$svrindex.ttl
$svrindex += 1
}

最后,我要说这个脚本有个大问题,就是密码是明文的,用完请删掉ttl文件或者说循环里直接删掉

有心者可以自行研究密文密码输入

2018-7-20更新

还有更简便的写法

# 在你的ttl目录下
ls -Name|ForEach-Object {ttermpro /M="<当前路径>\"$_}

你可能感兴趣的:(没有并行登陆怎么玩,teraterm并行登陆)