美文网首页
linux的自动登录脚本

linux的自动登录脚本

作者: 小pb | 来源:发表于2019-06-12 16:47 被阅读0次

记录一下我们工作中常用的登录脚本,网上有很多,完全可以照抄,但是自己记录下平时的积累吧,加深自己的理解吧

一般的自动登录脚本是通过expect脚本来进行实现的。
如果没有安装expect,先进行安装expect

      yum install expect

##############################################

  #!/usr/bin/expect

   set ip  "192.168.1.1"
   set user  "pb"
   set passwd "pbisgood" 
   set port "22"
   set timeout 30 

   spawn ssh -q -l$user  -p$port  $ip 
   expect {
        "yes/no" {
              send "yes\r";
              exp_continue;
        }
        "password:" {
              send "$passwd\r"
        }
    }
    expect "~]$ "

    send "ssh -q l$user -p 22 $ip\r"

    puts "\n--> Connected: $ip, please enjoy yourself!\n"
    interact 

##############################################
有脚本基础的基本都能看懂spaw前面的。

     spawn ssh -q -l$user  -p$port  $ip 

spawn 会启动新的进程,这里表示启动一个新的进程 通过ssh进行连接对应的机器。

     expect {
        "yes/no" {
              send "yes\r";
              exp_continue;
        }
        "password:" {
              send "$passwd\r"
        }
    }

expect命令 可以接收一个字符串参数,也可以接收正则表达式参数。
send将参数发送到进程。
expect 还有一个模式匹配的功能: 即当标准输入一个字符串时,输出相应的输出。所以这里当遇到“yes/no”时会自动将“yes\r"发送给进程。

interact:允许用户交互
interact 后就可以进行操作了

相关文章

网友评论

      本文标题:linux的自动登录脚本

      本文链接:https://www.haomeiwen.com/subject/hsblfctx.html