shell多服务器创建用户和文件操作

1、生成复杂密码

tr -dc '_A-Z#\-+=a-z(0-9%^>)]{<|' </dev/urandom | head -c 15; echo

2、ip.txt

mkdir -p /root/shell
#服务器ip root密码 创建的用户名 创建用的用户密码,空格隔开
vi ip.txt

192.168.37.71 123456 hive 123456
192.168.37.72 123456 hive 123456

3、user.sh

vi /root/shell/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",exp_continue }
        }
        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

4、执行

#为user.sh赋予可执行权限
chmod +x user.sh

#执行shell脚本
sh user.sh

5、验证

#检查服务器是否创建相应用户
id hive
#删除 /tmp 目录下的文件
 ll /tmp/

6、删除用户

tail -10 /etc/passwd|awk -F ":" '{print "userdel -r "$1}'|bash
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值