使用 expect 实现自动登录的脚本的原理. 脚本代码如下: ############################################## #!/usr/bin/expect set timeout 30 spawn ssh -l username 192.168.1.1 expect "password:" send "ispass\r" interact #############################################…
实现方式: 通过expect工具实现 #!/bin/bash yum -y install expect expect -c " spawn scp -r root@192.168.10.106:/root/qumf/Agoly.txt /root/qumf/ expect { \"*assword\" { ; send \"Hhly2017\r\"; } \"yes/no\" { send \"yes\r\"; e…
首先创建一个expect脚本ssh_expect,文件内容如下: #!/usr/bin/expect -f set hostname [lindex $argv 0] set user [lindex $argv 1] set passwd [lindex $argv 2] set timeout 30 set force_conservative 1 if {$force_conservative} { set send_slow {128 .1} } spawn ssh $user@$hos…
之前在做爬虫的时候遇到一种情况,当网络情况不太好的时候,爬虫爬到的链接在urlopen时会因为无法正常连接而报URLError或者timeout的错误导致陈序报错而终止:但是这些错误在重新运行陈序后能够解决,因此为了避免重复手动重启程序的麻烦,就想写脚本来自动重启. 思路很简单: 1.首先脚本检测目标程序是否在运行.这里我们可以用pidof的返回值来判断. 2.如果脚本检测到程序尚未运行或程序运行出错,重启程序.这里需要用到linux的$?变量,该变量能返回上一次命令的运行状态.其中0为运行正常…
在命令行ssh远程登录服务器和scp远程传输文件都需要交互式输入密码,无法像mysql登录数据库 mysql -uroot -p123456一样直接完成. 其实可以用脚本依赖expect来达到这一目的. 首先安装expect: [root@yqtrack-jumphost src]# yum -y install expect SSH登录脚本: #!/usr/bin/expect set timeout 30 spawn ssh root@192.168.1.93 expect "passwor…
安装 直接安装 sudo apt-get install sshpass 源代码安装 wget http://sourceforge.net/projects/sshpass/files/sshpass/1.05/sshpass-1.05.tar.gz tar xvzf sshpass-1.05.tar.gz ./configure make sudo make install 直接登录或通过脚本登录 #!/bin/bash sshpass -p "XXX" ssh user@IP…
欢迎转载!转载时请注明出处:http://blog.csdn.net/nfer_zhuang/article/details/42646849 前言 我在工作中经常要将一些文件传输到另外一个服务器上,而且都是Linux的命令行环境,那么对于我来讲scp就是最直接有效的方法了,其他诸如FTP.SMB以及Winscp这些有界面的文件传输工具到反而有些多余了. 使用过scp的都知道需要指定远端服务器的帐号并手动输入密码,那么如何避免每次都需要输入密码这个操作呢?下面就给出两种方案进行解决. 方法一:建…
场景:在linux A 上执行Linux B上的shell脚本和命令 步骤1.设置ssh免登陆 1.SSH无密码登录 # 本地服务器执行(A机器):生成密钥对 ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa cp  ~/.ssh/id_dsa.pub authorized_keys 如果有邮箱的话,使用 ssh-keygen -t rsa -C anl@163.comcat ~/.ssh/id_rsa.pub 然后使用winscp或者fileziall之类的文件…
shell 结合expect 写的批量scp脚本工具 except安装:http://www.cnblogs.com/lovychen/p/6525623.html expect用于自动化地执行linux环境下的命令行交互任务,例如scp.ssh之类需要用户手动输入密码然后确认的任务.有了这个工具,定义在scp过程中可能遇到的情况,然后编写相应的处理语句,就可以自动地完成scp操作了 在部署一个任务时,其中有一项必须的过程就是将一些文件,如安装包发送到大量的服务器上去.虽然已有宇哥的脚本可用:通…
转载: linux shell + expect:批量scp脚本工具             2011-09-13 15:51:06 分类: Python/Ruby 最近在准备一个部署的任务,其中有一项必须的过程就是将一些文件,如安装包发送到大量的服务器上去.虽然已有宇哥的脚本可用:通过paramiko模块提供的ssh和scp功能编写的python脚本.但我到现在还在对python的恐惧之中(虽然已经在空闲时间努力去学习了),所以我使用了shell和expect脚本结合的方式,写了这个批量scp…