面试题

1.使用for循环在/westos目录下批量创建10个html文件,其中每个文件名需要包含10个随机小写字母加固定字符串westos

#!/bin/bash
Path=/westos
[ -d "$Path" ] || mkdir -p $Path                 
 
for i in `seq 10`
do
    random=$(openssl rand -base64 40 | sed 's/[^a-z]//g' | cut -c 3-12)
   touch $Path/${random}_westos.html
done

在这里插入图片描述

2.新建10个用户westos01-westos10,然后赋予这是个用户随机的密码,密码输出到文档一份

#!/bin/bash
. /etc/init.d/functions
 
user="westos"
passfile="/tmp/user.log"
 
for num in `seq -w 10`
do
    pass="`echo $RANDOM | md5sum | cut -c 3-12`"
    useradd $user$num &> /dev/null && {
        echo "$pass" | passwd --stdin $user$num &> /dev/null
        echo -e "user:$user$num\tpasswd:$pass" >> $passfile
    }
 
if [ $? -eq 0 ];then
    action "$user$num is ok" /bin/true
else
    action "$user$num is failed" /bin/false
fi
done

md5sum命令用于生成和校验文件的md5值。它会逐位对文件的内容进行校验。是文件的内容,与文件名无关,也就是文件内容相同,其md5值相同。md5值是一个128位的二进制数据,转换成16进制则是32(128/4)位的进制值。
md5校验,有很小的概率不同的文件生成的md5可能相同。

以上脚本用的就是校验错误变量$RANDOM
产生的数组作为密码
在这里插入图片描述
再次执行
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值