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


    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

  • 相关阅读:
    FlyWeight(享元模式)
    PC_机器数_定点负数的原码_补码_反码在结构上的关系
    加拿大海运专线怎么选?加拿大海运专线有哪些费用
    redis笔记
    如何在VS2022中进行调试bug,调试的快捷键,debug与release之间有什么区别
    Nginx 监控模块
    NF-ResNet:去掉BN归一化,值得细读的网络信号分析 | ICLR 2021
    分布式开发漫谈
    vue-router的核心概念
    无线WiFi安全渗透与攻防(五) mdk4安装(kali linux)以及更新kali源
  • 原文地址:https://blog.csdn.net/wangjiaweiwei/article/details/126191300