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


    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

  • 相关阅读:
    WebServer(Nginx、Httpd、IIS)搭建Http文件服务
    HBase高阶(一)基础架构及存储原理
    乘方(pow) CSP-J2022
    196. 删除重复的电子邮箱
    gitlab环境准备
    解密负载均衡技术和负载均衡算法
    day43
    Django实现音乐网站 ⒁
    Windows OpenGL 图像对比度调节
    APP备案,平台上架APP必备,Android反编译工具下载
  • 原文地址:https://blog.csdn.net/wangjiaweiwei/article/details/126191300