• 重命名文件夹下的所有子文件夹名,重命名子文件夹下的所有子文件夹名


    1、想要重命名文件夹下的所有子文件夹的名称,所有的子文件夹的名称都加上文件夹的名称前缀

    代码如下:

    1. #!/bin/bash
    2. mkdir ../newtest
    3. ls -1 > ../newtest/dirName.txt
    4. bName=$(basename `pwd`)
    5. for name in $(cat ../newtest/dirName.txt)
    6. do
    7. #echo $bName
    8. #echo $name
    9. newName=$bName$name
    10. #echo $newName
    11. mv $name $newName
    12. done
    13. $(cp -rf ./$name ../newtest)

    代码解释如下:

    #!/bin/bash
    mkdir ../newtest    //创建一个新的测试目录
    ls -1 > ../newtest/dirName.txt      //将当前目录下的所有文件夹名列出,并保存在dirName.txt文件内
    bName=$(basename `pwd`)    //获取当前目录的名称
    for name in $(cat ../newtest/dirName.txt) //遍历所有的子文件名
    do
        #echo $bName
        #echo $name
            newName=$bName$name    //将子文件夹名加上“当前目录名称”的前缀
            #echo $newName
        mv $name $newName    //将子文件夹名进行更改
    done
    $(cp -rf ./$name ../newtest)    //将改名后的子文件夹拷贝到newtest目录下

    2、想要重命名子文件夹下的所有子文件夹名称,所有的子文件夹的子文件夹名称都加上子文件夹的名称前缀

    代码如下:

    1. #!/bin/bash
    2. mkdir ../newtest
    3. ls -1 > ../newtest/dirName.txt
    4. for name in $(cat ../newtest/dirName.txt)
    5. do
    6. cd $name
    7. ls -1 > ../../newtest/subdirName.txt
    8. subName=$(basename `pwd`)
    9. echo $subName
    10. for subname in $(cat ../../newtest/subdirName.txt)
    11. do
    12. echo $subname
    13. newsubName=$subName$subname
    14. echo $newsubName
    15. mv -f $subname $newsubName
    16. cp -rf ./$newsubName ../../newtest
    17. done
    18. cd ../
    19. done

    代码解释如下:

    #!/bin/bash
    mkdir ../newtest        //创建一个新的测试目录
    ls -1 > ../newtest/dirName.txt    //将当前目录下的所有文件夹名列出,并保存在dirName.txt文件内
    for name in $(cat ../newtest/dirName.txt) //遍历所有的子文件名
    do
        cd $name    //进入子文件
        ls -1 > ../../newtest/subdirName.txt    //将当前目录下的所有文件夹名列出,并保存在subdirName.txt文件内
        subName=$(basename `pwd`)    //获取子文件夹的名称
        echo $subName
        for subname in $(cat ../../newtest/subdirName.txt)    //遍历当前子文件夹的所有的子文件名
        do
            echo $subname
                newsubName=$subName$subname    //将子文件夹名加上“当前目录名称”的前缀
            echo $newsubName
            mv -f $subname $newsubName    //将子文件夹名进行更改
            cp -rf ./$newsubName ../../newtest    //将改名后的子文件夹拷贝到newtest目录下
        done
        cd ../
    done

  • 相关阅读:
    03_Java数组与方法
    【SpringBoot实战系列】Sharding-Jdbc实现分库分表到分布式ID生成器Snowflake自定义wrokId实战
    云渲染为设计行业带来哪些福利?
    【python学习】Day-023 正则表达式
    数据库管理-第四十五期 又一期杂谈(20221125)
    CSS中border-radius的来美化table的实战方案
    目标检测——day 53 Concealed Object Detection
    PHP代码审计——文件操作漏洞
    矩阵存储和特殊矩阵的压缩存储
    【OpenCV DNN】Flask 视频监控目标检测教程 01
  • 原文地址:https://blog.csdn.net/wangjiaweiwei/article/details/126191300