用一条命令批量添加用户(不能用循环)

面试题:

用一条命令添加zhanghe01,zhanghe02,zhanghe03,zhanghe04,zhanghe05,使用固定密码cba-123。

解答

第一步:生成用户
[root@centos7 ~]# echo zhanghe{01..05}
zhanghe01 zhanghe02 zhanghe03 zhanghe04 zhanghe05
[root@centos7 ~]# echo zhanghe{01..05} | tr ' ' '\n'
zhanghe01
zhanghe02
zhanghe03
zhanghe04
zhanghe05
[root@centos7 ~]# echo zhanghe{01..05} | xargs -n1
zhanghe01
zhanghe02
zhanghe03
zhanghe04
zhanghe05
第二步:生成命令	
[root@centos7 ~]# echo zhanghe{01..05} | xargs -n1 | sed -r 's@(.*)@useradd \1;@g'
useradd zhanghe01;
useradd zhanghe02;
useradd zhanghe03;
useradd zhanghe04;
useradd zhanghe05;
[root@centos7 ~]# echo zhanghe{01..05} | xargs -n1 | sed -r 's@(.*)@useradd &;@g'
useradd zhanghe01;
useradd zhanghe02;
useradd zhanghe03;
useradd zhanghe04;
useradd zhanghe05;
[root@centos7 ~]# echo zhanghe{01..05} | xargs -n1 | sed 's#.*#useradd &;#g'
useradd zhanghe01;
useradd zhanghe02;
useradd zhanghe03;
useradd zhanghe04;
[root@centos7 ~]# echo zhanghe{01..05} | xargs -n1 | sed 's#.*#useradd &;echo cba-123 | passwd --stdin &#g'
useradd zhanghe01;echo cba-123 | passwd --stdin zhanghe01
useradd zhanghe02;echo cba-123 | passwd --stdin zhanghe02
useradd zhanghe03;echo cba-123 | passwd --stdin zhanghe03
useradd zhanghe04;echo cba-123 | passwd --stdin zhanghe04
useradd zhanghe05;echo cba-123 | passwd --stdin zhanghe05
第三步:交给bash
[root@centos7 ~]# echo zhanghe{01..05} | xargs -n1 | sed 's#.*#useradd &;echo cba-123 | passwd --stdin &#g' | bash
更改用户 zhanghe01 的密码 。
passwd:所有的身份验证令牌已经成功更新。
更改用户 zhanghe02 的密码 。
passwd:所有的身份验证令牌已经成功更新。
更改用户 zhanghe03 的密码 。
passwd:所有的身份验证令牌已经成功更新。
更改用户 zhanghe04 的密码 。

  

猜你喜欢

转载自www.cnblogs.com/yizhangheka/p/11737302.html