zoukankan      html  css  js  c++  java
  • 批量创建10个用户stu01-stu10

    1.批量创建10个用户stu01-stu10,并且设置随机8位密码,要求不能用shell循环(例如:for,while等),只能用命令及管道实现。

     1 ##方法1:
     2 [root@server tmp]# echo stu{01..10}|tr " " "
    "|sed -r 's#(.*)#useradd 1 ; pass=$((RANDOM+10000000)); echo "$pass"|passwd --stdin 1; echo -e "1 	 `echo "$pass"`">>/tmp/oldboy.log#g'|bash
     3 useradd: user 'stu01' already exists
     4 Changing password for user stu01.
     5 passwd: all authentication tokens updated successfully.
     6 useradd: user 'stu02' already exists
     7 Changing password for user stu02.
     8 passwd: all authentication tokens updated successfully.
     9 useradd: user 'stu03' already exists
    10 Changing password for user stu03.
    11 passwd: all authentication tokens updated successfully.
    12 useradd: user 'stu04' already exists
    13 Changing password for user stu04.
    14 passwd: all authentication tokens updated successfully.
    15 useradd: user 'stu05' already exists
    16 Changing password for user stu05.
    17 passwd: all authentication tokens updated successfully.
    18 useradd: user 'stu06' already exists
    19 Changing password for user stu06.
    20 passwd: all authentication tokens updated successfully.
    21 useradd: user 'stu07' already exists
    22 Changing password for user stu07.
    23 passwd: all authentication tokens updated successfully.
    24 useradd: user 'stu08' already exists
    25 Changing password for user stu08.
    26 passwd: all authentication tokens updated successfully.
    27 useradd: user 'stu09' already exists
    28 Changing password for user stu09.
    29 passwd: all authentication tokens updated successfully.
    30 useradd: user 'stu10' already exists
    31 Changing password for user stu10.
    32 passwd: all authentication tokens updated successfully.
    33 上述命令实际就是再拼N条下面的命令的组合,举一条命令stu01用户的过程拆解如下:
    34 useradd stu01 ; 
    35 pass=$((RANDOM+10000000)); 
    36 echo "$pass"|passwd --stdin stu01; 
    37 echo -e "stu01        `echo "$pass"`">>/tmp/oldboy.log
    38 特别说明:如果用shell循环结构会更简单,之所以限制使用循环的目的是锻炼学生的基础命令运用
    39 能力,学到现在还没学到SHELL循环课程呢
    40 ##方法2:
    41 [root@server tmp]# echo stu{11..12}|xargs -n1 useradd ;echo stu{11..12}:`cat /dev/urandom|tr -dc 0-9|fold -w8|head -1`|xargs -n1|tee -a pass.txt|chpasswd
    42 ##方法3:
    43 [root@server tmp]# echo stu{21..30} | tr ' ' '
    ' | sed -e 's/^/useradd /' -e 's/(stu[0-9]{2})$/1 && echo "1:`echo $[$RANDOM**3] | cut -c1-8`" | tee -a userInfo.txt | cut -d: -f2 | passwd --stdin 1/' | bash
    44 Changing password for user stu21.
    45 passwd: all authentication tokens updated successfully.
    46 Changing password for user stu22.
    47 passwd: all authentication tokens updated successfully.
    48 Changing password for user stu23.
    49 passwd: all authentication tokens updated successfully.
    50 Changing password for user stu24.
    51 passwd: all authentication tokens updated successfully.
    52 Changing password for user stu25.
    53 passwd: all authentication tokens updated successfully.
    54 Changing password for user stu26.
    55 passwd: all authentication tokens updated successfully.
    56 Changing password for user stu27.
    57 passwd: all authentication tokens updated successfully.
    58 Changing password for user stu28.
    59 passwd: all authentication tokens updated successfully.
    60 Changing password for user stu29.
    61 passwd: all authentication tokens updated successfully.
    62 Changing password for user stu30.
    63 passwd: all authentication tokens updated successfully.
    64 功能: 创建10个用户 分别是 stu21-stu30 其密码是用随机数变量RANDOM生成,均保存至 userInfo.txt中,格式: username:passwd   这个写的不算好  如果有更好的一定要分享哦!  上面的随机数 我之前是用日期生成的,是不对的,因为有可能会有重复现象,所以我后来干脆用RANDOM**3取其前8位,可确保唯一性
    65 ##方法4:
    66 [root@server tmp]# echo stu{01..10} |tr ' ' '
    '|sed -rn 's@^(.*)$@useradd 1 ; echo $RANDOM|md5sum|cut -c 1-8 >/data/1;cat /data/1|passwd --stdin 1@gp'|bash
    67 useradd: user 'stu01' already exists
    68 Changing password for user stu01.
    69 passwd: all authentication tokens updated successfully.
    70 useradd: user 'stu02' already exists
    71 Changing password for user stu02.
    72 passwd: all authentication tokens updated successfully.
    73 useradd: user 'stu03' already exists
    74 Changing password for user stu03.
    75 passwd: all authentication tokens updated successfully.
    76 useradd: user 'stu04' already exists
    77 Changing password for user stu04.
    78 passwd: all authentication tokens updated successfully.
    79 useradd: user 'stu05' already exists
    80 Changing password for user stu05.
    81 passwd: all authentication tokens updated successfully.
    82 useradd: user 'stu06' already exists
    83 Changing password for user stu06.
    84 passwd: all authentication tokens updated successfully.
    85 useradd: user 'stu07' already exists
    86 Changing password for user stu07.
    87 passwd: all authentication tokens updated successfully.
    88 useradd: user 'stu08' already exists
    89 Changing password for user stu08.
    90 passwd: all authentication tokens updated successfully.
    91 useradd: user 'stu09' already exists
    92 Changing password for user stu09.
    93 passwd: all authentication tokens updated successfully.
    94 useradd: user 'stu10' already exists
    95 Changing password for user stu10.
    96 passwd: all authentication tokens updated successfully.
  • 相关阅读:
    HTTP 方法:GET 对比 POST
    【总结整理】关于写前端页面小技巧
    【总结整理】关于IE6的兼容性
    添加制图图例(转)
    【总结整理】JQuery调试
    【总结整理】关于切图
    【总结整理】JQuery小技巧
    【总结整理】webstorm插件使用
    【总结整理】JQuery基础学习---动画
    初学正则表达式
  • 原文地址:https://www.cnblogs.com/hackerer/p/5085418.html
Copyright © 2011-2022 走看看