标签:passwd als 网络 ash path init ecb user useradd
使用for 循环在/oldboy目录下批量创建10个html文件,其中每个文件需要包含10个随机小写字母加固定字符串oldboy,名称示例如下:
[root@shiyanji ~]# ls /oldboy/
aebecfecbd_oldboy.html baaaafbcda_oldboy.html ccdeadaebe_oldboy.html ceefcaaffc_oldboy.html deacbedcdb_oldboy.html
afcbdeeafc_oldboy.html bbbceadeef_oldboy.html cdedcfadec_oldboy.html dcdbedaace_oldboy.html ecfebeaaaf_oldboy.html
解答:
[root@web01 oldboy]# vim /server/scripts/ti1.sh
#!/bin/bash Path=/oldboy [ -d "$Path" ] ||mkdir -p $Path for i in `seq 10` do random=$(echo $RANDOM|sha512sum|sed ‘s#[^a-z]##g‘|cut -c 1-10) touch $Path/${random}_oldboy.html done
将上题中的oldboy字符串全部改成oldgirl(最好用for循环实现),并且将扩展名html全部改成大写。
解答:
[root@web01 oldboy]# vim /server/scripts/ti2.sh #!/bin/bash Filename=oldgirl.HTML Dirname="/oldboy" cd $Dirname for i in `ls` do name=$(echo ${i}|awk -F ‘_‘ ‘{print $1}‘) mv $i ${name}_${Filename} done
批量创建10个系统账号oldboy01-oldboy10并设置密码(密码为随机数,要求是字符和数字等的混合)。
不使用for循环做法
seq -w 10|sed ‘s#.*#useradd oldboy&;a=`echo $RANDOM|sha512sum|cut -c 1-10`;echo $a|passwd --stdin oldboy&;echo oldboy& $a >>/tmp/mima#ge‘
说明:
e 等于bash
-w 平衡宽度用前导零填充
使用for循环脚本
[root@web01 scripts]# vim ti3.sh #!/bin/bash Mima=`echo $RANDOM|sha512sum|cut -c 1-10` for i in oldboy{1..10} do useradd $i;echo ${Mima}|passwd --stdin $i touch /tmp/new echo $i ${Mima} >>/tmp/new done
写一个Shell脚本,判断10.0.0.0/24网络里,当前在线的IP有哪些?
解答:
#!/bin/bash for i in 10.0.0.{1..254} do { ping -w 2 -c 2 $i &> /dev/null if [ $? -eq 0 ];then echo "$i is ok" fi }& done
说明:
ping
-c count次数
-w 延期时间
. /etc/init.d/functions 调用这个库
action $i /bin/true 固定格式(把$i以这个库的true格式显示)
action $i /bin/false 固定格式(把$i以这个库的false格式显示)
& Shell的并发检测功能,批量ping,快速返回结果
标签:passwd als 网络 ash path init ecb user useradd
原文地址:http://www.cnblogs.com/wangxin-log/p/7123138.html