zoukankan      html  css  js  c++  java
  • shell字符串对比文本

    file1 file2的文本对比 逐行

    #!/bin/bash
    list=`cat $file1`
    for line in `cat $file2`
    do
        array=(${line//,/}) #字符串逗号分隔
        name=${array[0]} #获取数组第一个元素
        if [[ $name == mac_* ]] #该元素是否是以mac_开头
        then 
            if [[ ! "${list}[@]"] =~ $name ]] ; then #file1是否包含该字符串
                echo $name//打印
            fi
        fi
    done
    

     

    批量更改某个路径下的文件名

    function modeFileName(){
      for file in $1/*
      do
        echo "$file"
        if [[ $file =~ " " ]]#判断文件名是否包含空格
        then
            continue
        fi
        if [ -f "$file" ]
        then
        if [[ "$file" == *PonyIW* ]]#文件名是否包含该字符串
          then
            `rename "s/PonyIW/Kang/" "$file"`#文件名特殊字符串替换
        fi
        else
            if [ "`ls -A $file`" != "" ]#空目录不操作
            then
                modeFileName "$file"
            fi
        fi
      done
    }

      

    批量修改文件里的字符串,替换为新的字符串

    function modeCharaName(){
      for file in $1/*
      do
        echo "$file"
        if [[ $file =~ " " ]]#判断文件名是否包含空格
        then
            continue
        fi
        if test -f $file
        then
          sed -i "" "s/PonyIW/Kang/g" $file #将PonyIW替换为Kang
        else
            if [ "`ls -A $file`" != "" ]#判断是否是空目录 空目录不操作
            then
                modeCharaName "$file"
            fi
        fi
      done
    }  

     修改文件名

    function modeFolderName(){
      for file in $1/*
      do 
        echo $file
        if test -d $file
        then
          mv $file ${file/a/b}#文件重命名
        fi
      done
    }
    
    function modeFolderName2(){
      for file in $1/*
      do 
        echo $file
        if test -d $file
        then
          mv $file ${file%+1*}#文件名截取'+1'左边的字符串
        fi
      done
    }
    

      

      

  • 相关阅读:
    搭建strom 的开发环境
    maven 的plugin 的使用
    Maven 的dependency 的 classifier的作用
    Maven中的dependency的scope作用域详解
    Supervisor-进程监控自动重启
    websocket 实战
    vue 监听路由变化
    vux-uploader 图片上传组件
    vue 定义全局函数
    判断对象属性的值是否空,如为空,删除该属性
  • 原文地址:https://www.cnblogs.com/symen/p/13129217.html
Copyright © 2011-2022 走看看