ssh登入指令碼 expect語言中使用awk

2021-05-22 10:11:35 字數 652 閱讀 7030

五一勞動節被叫過去加班,要公升級程式,有100多台的伺服器。

需要先登入伺服器,再將伺服器上的程式停掉,伺服器上的程式程序是用screen建立的,ps -ef 他的程序pid 然後kill掉

#!/usr/bin/expect

set ipaddr [lindex $argv 0]

spawn ssh ict@$ipaddr

expect "yes/no)?"

sleep 3

send "yes/r"

expect "password:"

sleep 6

send "123ic#/r"

expect "]$"

send '`}

send "/r"

expect "]$"

send "screen -wipe/r"

expect "]$"

send "exit"

expect eof

exit

迴圈所有節點ip

#!/bin/bash

cat redhat_client_ip.txt | while read line; do

echo "$line"

./kill_process.sh $line >$line.log

done

expect使用ssh登入指令碼

基礎篇 u s ssh spawn ssh l root 10.10.10.24 等待響應,第一次登入往往會提示是否永久儲存 rsa 到本機的 know hosts 列表中 等到回答後,在提示輸出密碼 之後就直接提示輸入密碼 expect yes no password host interact ...

expect實現自動登入指令碼

寫在前面 目前在公司是一人一台虛擬機器,大多數工作都要在虛擬機器上完成,為此每天要執行很多次 ssh 指令登入虛擬機器 有很多方式解決這個問題,如使用xshell securecrt等工具記錄常用的連線,我就寫了乙個簡單的指令碼實現一鍵登入 login.sh指令碼內容如下 usr bin expec...

expect指令碼實現批量ssh互信

搭hadoop時候需要配置多節點ssh互信,節點數量多了,手工配起來就很麻煩。網上有很多自動配置ssh互信的指令碼,但基本都不能直接用。今天摸索了下,自己寫了個簡易版,測試還能用,在這裡分享下。1 每個節點安裝expect包 yum install expect y 2 將auto ssh.sh及i...