• 【Linux】shell编程案例


    一、随机生成字符文件名

    1.需求描述:

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

    以下为示例:

    image


    2.代码部分:

    #!bin/bash
    #Autor:OLIVER
    #Date :2018-12-11
    #Desc :生成随机文件名
    #Version 1.0
    
    [ -d /usr/prac ] || mkdir /usr/prac
    cd /usr/prac
    echo $(pwd) && 
    
    for i in {1..10}
     do
       filename=$(uuidgen|tr '0-9-' 'a-z'|cut -c 1-10 )
       touch ${filename}_test.html
     done
    

    代码高亮截图:

    image

    3.代码说明

    [ -d /usr/prac ] || mkdir /usr/prac 判断文件夹/usr/prac是否存在,不存在则新建

    echo $(pwd) &&    控制台输出当前文件目录

    0-9- 该表达式会将短线过滤


    二、批量修改文件名

    1.需求描述

    将上述文件名中的test后缀批量修改为exp,并且将文件名后缀修改为.HTML

    以下为示例:

    image

    2.代码部分

    #!bin/bash
    #Autor:OLIVER
    #Date :2018-12-11
    #Desc :批量修改文件名
    #Version 1.0
    
    DIR=/usr/prac
    
    cd $DIR && 
    
    for i in $(ls *.html)
       do
         rname=$(echo $i|cut -c -10)
         mv $i ${rname}_exp.HTML
       done
    

    代码高亮截图

    image

    3.代码说明

    for i in $(ls *.html) 表示循环文件夹下所有的html文件,i指文件名

    ${rname} 表示获取变量值,与$rname等效


    三、筛选符合长度的单词

    1.需求描述

    利用bash for循环打印下面这句话中字母数大于4的单词

    We waited for john in the lobby of the airport

    2.代码部分

    #!bin/bash
    #Autor:OLIVER
    #Date :2018-12-11
    #Desc :筛选
    #Version 1.0
    
    for i in We waited for john in the lobby of the airport
      do
        if [ "${#i}" -le 4 ];then
         echo $i
        fi
      done

    代码高亮截图

    image

    3.代码说明

    ${#i}  表示取字符串i的长度值

















  • 相关阅读:
    BottomNavigationView3个项以上不显示文字的问题
    ViewPager中height=wrap_content无效,ScrollView里边用ListView显示不全解决办法
    Gson解析
    Parcelable Android SDK提供,基于内存,读写高于硬盘
    Serializable序列化 && 坑
    OpenStack中添加Floating IP
    Hadoop
    Redis
    ELK
    OpenStack
  • 原文地址:https://www.cnblogs.com/OliverQin/p/10103666.html
Copyright © 2020-2023  润新知