expect安裝測試 批量使用者管理

2021-07-09 11:36:59 字數 2072 閱讀 5213

安裝:

yum list | grep expect

yum install expect

批量建立使用者:

ansible mysqldb -m user -a 'name=ansible state=present'

ansible mysqldb -m raw -a 'echo 123456|passwd --stdin ansible'

批量新增sudo許可權:

[root@zabbix ~]# cat 

ansible

-sudo               ----編輯sudo檔案

## allow root to run any commands anywhere 

#root    all=(all)       all

ansible all=(all)       all

# ansible mysqldb -m copy -a 'src=~/

ansible

-sudo dest=/etc/sudoers.d/'          ----批量新增sudo檔案

# ansible mysqldb -m file -a "dest=/etc/sudoers.d/

ansible

-sudo mode=440 owner=root group=root"    ----修改許可權

# ansible mysqldb -m shell -a "rm -f /etc/sudoers.d/

ansible-

sudo"       ----批量刪除檔案

批量配置ssh 免金鑰登入指令碼:

[root@zabbix ~]# cat sendsshkey.sh 

#!/bin/bash 

user=$1 

if [ -z $1 ]; then 

echo "usage: ./$0 username passwd" 

fi function sendsshkey()@$

echo "*****===$#  -- $1 -- $2 -- $3 *****===="

if [ ! $2 ] || [ ! $3 ] ;then

echo "ip/password not found !" 

exit

else

expect -c "

spawn $ssh $keystore $@$

expect

\"*password*\"

\"*password*\" }

"echo -e "\033[40;32m send sshkey to $2 success \033[0m\n"

fi} 

cat ./serverlist.txt |while read i 

douser=$1

ip=`echo $i | awk ''`

#echo " $# -- $1 --  $2"

if [ $# -eq 1 ];then

password=`echo $i | awk ''`

elif [ $# -eq 2 ];then

password=$2

else

exit 

fisendsshkey $user $ip $password

done 

批量配置

免金鑰登入ip:

[root@zabbix ~]# cat serverlist.txt 

172.16.100.23

172.16.100.24

172.16.100.25

172.16.100.26

172.16.100.27

# ansible mysqldb -m shell -a "rm -f /root/.ssh/*"        ----刪除所有金鑰,取消免金鑰登陸配置

執行配置:

expect 批量監控主機

oracle oaprimary shell cat expect.sh while read line douser echo line awk ip echo line awk passwd echo line awk 把shell中的 user ip passwd引數傳遞給expect指令碼 ...

EXPECT 指令碼 批量 遠端互動

在shell自動部署專案中對自動部署免去使用者互動很痛苦 expect eof 這個一定要加,與spawn對應表示捕獲終端輸出資訊終止,類似於if.endif expect指令碼必須以interact或expect eof結束,執行自動化任務通常expect eof就夠了。設定expect永不超時。...

Expect安裝方法

expect是基於tcl語言的一種指令碼語言,其實無論是互動還是非互動的應用場合,expect都可以大顯身手,但是對於互動式的特定場合,還非except莫屬。b 第1步 使用root使用者登入 b b 第2步 複製安裝檔案 b 在合適的位置建立乙個資料夾,例如soft 修改資料夾讀寫許可權 chmo...