龙空技术网

分享两个shell脚本实例--批量生成随机字符文件名和批量改名

波波说运维 10560

前言:

而今小伙伴们对“bash shell脚本编程经典实例第2版”大致比较看重,同学们都需要剖析一些“bash shell脚本编程经典实例第2版”的相关文章。那么小编也在网摘上网罗了一些关于“bash shell脚本编程经典实例第2版””的相关文章,希望小伙伴们能喜欢,咱们快快来学习一下吧!

概述

在计算机科学中,for循环(英语:for loop)是一种编程语言的迭代陈述,能够让程式码反复的执行。

它跟其他的循环,如while循环,最大的不同,是它拥有一个循环计数器,或是循环变数。这使得for循环能够知道在迭代过程中的执行顺序。今天主要用两个实例来介绍下shell脚本的for循环。

1、批量生成随机字符文件名

需求:使用for循环在/data目录下批量创建10个html文件,其中每个文件需要包含10个字符,包含3个随机小写字母和3个随机大写字母加固定字符串hwb

#!/bin/bash############################################################## File Name: make_file.sh#############################################################​[ -d /data ] || mkdir -p /datarpm -qa |grep pwgen &>/dev/nullif [ $? -eq 1 ]  then  yum install -y expect &>/dev/nullfi​cd /data &&\for i in {1..10} do #File_Name=`uuidgen |tr "0-9-" "a-z"|cut -c 1-10` File_Name2=`mkpasswd -l 10 -c 3 -C 3` touch ${File_Name2}_hwb.htmldone

脚本結果:

2、批量改名特殊案例

将前面结果文件名中的hwb字符串全部改成linux(最好用for循环实现),并且将扩展名html全部改成大写。

#!/bin/bash############################################################## File Name: rename_file.sh#############################################################​cd /data &&\File_name=`ls |sed -r 's#(.*)_hwb.html#\1#g'`​for i in $File_name do if [ -f ${i}_hwb.html ]  then mv ${i}_hwb.html ${i}_linux.HTML else echo "文件修改完成." exit fidone

结果:

觉得有用的朋友多帮忙转发哦!后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注下~

标签: #bash shell脚本编程经典实例第2版