使用expect命令批处理

使用expect命令批处理

使用expect

背景

由于需要将一个文件,远程拷贝到一批linux设备里,并需要在登录后,进行后续权限修改等处理。故而决定写一个批处理脚本

experct命令使用示例

一段简单示例,主要是用scp和ssh登录,下面为代码片.

// An highlighted block
#!/usr/bin/expect -f
#获取外部输入ip
set machineip [lindex $argv 0 ]
#KEYPATH=/home/me/somefile.txt

#使用远程scp指令
spawn scp somefile.txt me@$machineip:/home/me/
expect "Password*"
send "123456\r"

#登录远程设备
spawn ssh me@$machineip
expect "Password*"
send "123456\r"

#后续处理
expect "]*"
send "sudo chown me somefile.txt\r"
expect "]*"
send "sudo chgrp users somefile.txt\r"
expect "]*"
send "sudo rm /home/me/key123.txt\r"
expect "]*"

#interact
expect eof
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值