linux shell 多个服务器上创建用户和文件
1、编辑服务器ip,密码,创建用户,密码文件,中间用空格隔开[root@k8s-master shell]# vim ip.txt192.168.107.182 123456 user01 123192.168.107.183 123456 user01 1232、编写shell脚本文件[root@k8s-master shell]# vim user.sh#!/bin/e...
1、编辑服务器ip,密码,创建用户,密码文件,中间用空格隔开
[root@k8s-master shell]# vim ip.txt
192.168.107.182 123456 user01 123
192.168.107.183 123456 user01 123
2、编写shell脚本文件
[root@k8s-master shell]# vim user.sh
#!/bin/env bash
#多个服务器上创建用户和文件
#服务器ip/密码,用户名/密码 存放文件
ip_file=/root/shell/ip.txt
#参数说明
#sys_ip 被操作服务器ip
#sys_pass 被操作服务器密码
#user_name 创建的用户名称
#user_pass 创建的用户密码
while read sys_ip sys_pass user_name user_pass
do
#使用expect免密交互登录服务器
/usr/bin/expect <<-END &>/dev/null
spawn ssh root@$sys_ip
expect {
"yes/no" { send "yes\r";exp_continue }
"password" { send "$sys_pass\r" }
}
expect {
"#" {
send "useradd $user_name;rm -rf /tmp/*;\r"
send "echo $user_pass | passwd --stdin $user_name;exit;\r"
}
}
expect eof
END
echo "$sys_ip服务器用户创建完毕"
done < $ip_file
3、为user.sh赋予可执行权限
[root@k8s-master shell]# chmod +x user.sh
4、执行shell脚本
[root@k8s-master shell]# ./user.sh
192.168.107.182服务器用户创建完毕
192.168.107.183服务器用户创建完毕
5、检查服务器是否创建相应用户和删除 /tmp 目录下的文件
[root@k8s-node1 ~]# id user01
uid=1000(user01) gid=1000(user01) groups=1000(user01)
[root@k8s-node1 ~]# ll /tmp/
total 0
更多推荐
所有评论(0)