linux 远程登录执行命令
来源:互联网 发布:呼叫中心系统源码 编辑:程序博客网 时间:2024/06/05 10:36
@(Linux 命令脚本)
方便自动化运维部署,在多台机器上自动执行命令。
ssh 需要输入密码, 所以使用 expect 进行交互,从执行文本读取远程主机 IP, 登录名和密码后执行远程登录,执行命令。
脚本 remote_cmd.sh
#!/bin/bashif [ ! -f "host.list" ]; then echo "host.list no exit" exit -1fi# 去除空行sed -i '/^[:space:]*$/d' host.listwhile read LINEdo eval $(echo $LINE | awk '{printf("IP=%s USER=%s PASSWD=%s",$1, $2, $3)}') expect <<-END set timeout 1200 spawn ssh -p 36000 -l $USER $IP expect { "yes/no" {send "yes\r"; exp_continue} "password:" {send $PASSWD\r";} } sleep 1 send "cd ~/work/\r" sleep 1 send "touch aa\r" sleep 1 send "exit\n" expect eof exit ENDdone < host.list
主机列表 host.list
192.168.67.236 lcd jklfds192.168.67.236 lcd jklfds
通过 ssh 远程登录执行命令,启动远程终端, 通过参数 -t 实现 :
ssh -t -p 36000 -l lcd 192.168.67.236 "mkdir -p ~/work/lcd"
expect 需要安装 :
ubuntu 下 : sudo apt-get install expect
阅读全文
0 1
- linux 远程登录执行命令
- Linux 自动登录远程主机执行命令
- linux远程自动登录以及执行命令
- java应用程序远程登录linux并执行其命令
- java如何远程登录linux并执行其命令
- Java应用程序(远程)登录linux并执行其命令
- linux shell脚本登录远程执行命令,交互通过脚本
- linux 执行远程命令
- 远程登录linux服务器命令
- Linux远程登录命令:Telnet
- Windwos远程执行Linux命令
- linux 远程命令执行不
- java远程执行linux命令
- java远程执行linux命令
- java远程执行linux命令
- linux shell 远程执行命令
- Java远程执行Linux命令
- java 远程执行linux命令
- 试试54款开源服务器软件 (比较知名的软件大集合)
- Java File 类的使用方法
- sql语句之group_concat函数
- Hive学习指南(四)
- C#定时执行某一个功能二(解压并读取xml到postgresql)
- linux 远程登录执行命令
- ANdroid的崩溃总结
- 双向循环链表简单的插入、删除、修改以及查找功能的实现
- opencv(21)---轮廓属性特征以及应用之凹包
- liunx centos 搭建配置apache2.4+php5.6.30
- error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
- IPC通信
- 解决the virtual device got no ip address情况之一
- 创建支持ssh的docker镜像