shell30题之第一题

1.1.1 Shell面试题1:批量生成随机字符文件名案例

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

[root@oldgirl C19]# ls /oldboy

apquvdpqbk_oldboy.html  mpyogpsmwj_oldboy.html  txynzwofgg_oldboy.html

方法一数组

 

复制代码
#!/bin/bash
##############################################################
# File Name: test1_2.sh
# Version: V1.0
# Author: gaobo
# Organization: 641627690@qq.com
# Created Time : 2017-12-04 14:55:31
# Description:
##############################################################
j=0

for i in {a..z}
do

shuzu[$j]=$i

let j++
done

echo ${shuzu[@]}
echo ${shuzu[1]}

for ((m=0;m<10;m++))
do

for ((k=0;k<10;k++))
do
               #
               cc=${shuzu[$(echo $RANDOM%25|bc)]}
               #
               zfc="$cc$zfc"
done
       
touch "${zfc}"_oldboy.html
zfc=

done

复制代码

 

方法二随机数

复制代码
[root@jenkins scripts]# cat test1.sh 
#!/bin/bash
##############################################################
# File Name: test1.sh
# Version: V1.0
# Author: gaobo
# Organization: 641627690@qq.com
# Created Time : 2017-12-04 14:50:09
# Description:
##############################################################

for ((i=0;i<=10;i++))
do

cc=$(date +%N%F|md5sum|sed  -n "s/[0-9 -]//gp")

wjm=$(echo ${cc}${cc}|cut -c 1-10)

touch ${wjm}_oldboy.html


done
复制代码

 ==========================================

 

 

path=/oldboy
[ -d $path ] || mkdir -p $path
cd $path
for ((i=1;i<=10;i++))
do
    touch `echo $RANDOM|md5sum|tr "[0-9]" "[a-z]"|cut -c 1-10`_oldboy.html &>/dev/null
done

 

tr "[0-9]"  "[a-z]"  将内容进行替换就解决了数字的问题

 

posted @   滴滴滴  阅读(411)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
1.1.1 Shell面试题1:批量生成随机字符文件名案例
点击右上角即可分享
微信分享提示