linux实战考试题:批量创建用户和密码(不能使用循环)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux实战考试题:批量创建用户和密码(不能使用循环)相关的知识,希望对你有一定的参考价值。

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

方法1

[[email protected] /]# echo stu{01..10}|tr " " "\n"|sed -r ‘s#(.*)#useradd \1 ; pass=$((RANDOM+10000000)); echo "$pass"|passwd --stdin \1; echo -e "\1 \t `echo "$pass"`">>/tmp/oldboy.log#g‘|bash

上述命令实际就是再拼N条下面的命令的组合,举一条命令stu01用户的过程拆解如下:

useradd stu01 ;

pass=$((RANDOM+10000000));

echo "$pass"|passwd --stdin stu01;

echo -e "stu01        `echo "$pass"`">>/tmp/oldboy.log

方法2: 来自酒醉饭饱

echo stu{1..10}|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

方法3:来自D调的华丽

 echo stu{21..30} | tr ‘ ‘ ‘\n‘ | 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

功能: 创建10个用户 分别是 stu21-stu30 其密码是用随机数变量RANDOM生成,均保存至 userInfo.txt中,格式: username:passwd 上面的随机数 我之前是用日期生成的,是不对的,因为有可能会有重复现象,所以我后来干脆用RANDOM**3取其前8位,可确保唯一性。

方法4:来自freeandeasy

echo stu{01..10} |tr ‘ ‘ ‘\n‘|sed -rn ‘[email protected]^(.*)[email protected] \1 ; echo $RANDOM|md5sum|cut -c 1-8 >/data/\1;cat /data/\1|passwd --stdin \[email protected]‘|bash

方法5

echo `cat /dev/urandom | head -1 | md5sum | head -c 8` | passwd --stdin stu{01..10}

方法6:来自李闯LC

echo stu{01..10}|tr " " "\n"|sed -r ‘s#(.*)#useradd \1;lc=$((RANDOM10000000)); echo "$lc"|passwd --stdin \1#g‘|bash

方法7:来自luolin——4200

echo stu{01..10}:$(date %N)|sed ‘s# #\n#g‘ >/mnt/pass;awk -F ":" ‘{print $1}‘ /mnt/pass |xargs -n 1 useradd;pwunconv;chpasswd </mnt/pass;pwconv

方法8:来自犯二的阿三

echo a2stu{01..10}|xargs -n1|awk ‘{print"useradd "$0" && mkpasswd -l 8 >>/tmp/mima.txt;tail -1 /tmp/mima.txt|passwd --stdin "$0}‘|bash


各路大神,路过有更好的方法,还望不啬赐教!

以上是关于linux实战考试题:批量创建用户和密码(不能使用循环)的主要内容,如果未能解决你的问题,请参考以下文章

(转)linux实战考试题:批量创建用户和密码-看看你会么?

linux实战考试题:批量创建用户和随机8位密码-看看你会多少种?

linux批量分发必会面试题,通过邮件反馈结果。

Linux下的shell脚本实战之用户创建

Linux 批量创建用户及设置随机密码

shell编程企业实战(试题)