• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >linux shell > shell脚本递归遍历目录及子目录的例子分享

shell脚本递归遍历目录及子目录的例子分享

作者: 字体:[增加 减小] 来源:互联网

通过本文主要向大家介绍了shell脚本例子,shell脚本编程例子,shell脚本遍历目录,shell脚本 遍历文件,shell脚本遍历文件夹等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

用shell写的递归遍历目录的脚本,脚本实现递归遍历指定目录,打印目录下的文件名。

实例1:

实例2:递归读取目录及其子目录

#测试目录 test
read_dir test</div>
这样给test.sh加上执行权限即可执行

实例3:

#!/bin/bash

#modify.func

doit()   //处理当前目录下的非目录文件,忽略目录文件

{

    oldname=`ls | grep "$1$"`

    for name in $oldname

    do

       if [ -d "$name" ]

       then :

       else

            basename=`echo $name | awk -F "." '{print $1}'`  

            newname="$basename$2"                                       

            echo -e "$PWD/$name\t\t$newname"

            mv $name $newname

            count=`expr ${count} + 1`

       fi

    done

    return 0

}

do_recursive()          //从当前目录开始,递归处理各目录

{

    doit $1 $2

    for filename in `ls`

    do

         if [ -d "$filename" ]

         then

             cd $filename

             do_recursive $1 $2

             cd ..

         fi

    done

    return 0

}

modify()                     //处理当前目录,并报告结果,这个相当于主函数,也可以直接调用do_recursive

{

    PARAMS=2

    if [ $# -ne $PARAMS ]

    then

        echo "usage: mv_to .suf1 .suf2"

        return 1

    fi

    count=0

    do_recursive $1 $2

    echo "complete! $count files have been modified."

    return 0

}
</div>

</div>

您可能想查找下面的文章:

  • Shell脚本实现的一个简易Web服务器例子分享
  • Shell脚本实现自动发送邮件的例子
  • Shell获取文件的文件名和扩展名的例子
  • shell脚本递归遍历目录及子目录的例子分享

相关文章

  • Shell脚本逐行读取文本文件(不改变文本格式)
  • linux文本分析awk基础命令介绍(8)
  • 使用scp获取远程linux服务器上的文件 linux远程拷贝文件
  • 一个shell for循环与case结合的脚本(监控程序状态)
  • 分享awk变量$0的妙用
  • git revert和git reset的区别详解
  • Shell脚本实现检测某ip网络畅通情况(含短信报警功能)
  • 在指定目录查找指定后缀文件的shell脚本代码
  • shell脚本连接、读写、操作mysql数据库实例
  • Linux shell命令帮助格式详解

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • Shell脚本学习指南之文本处理工具
    • Shell脚本if else语句小结
    • mysql源码安装脚本分享
    • Linux 中C语言getcwd()函数的用法
    • linux下安装配置Memcache和PHP环境的实现
    • 给定链表中间节点指针,删除中间节点的方法
    • Linux内核链表实现过程
    • expect实现批量修改linux密码脚本分享
    • Linux中文件权限目录权限的意义及权限对文件目录的意义
    • Shell常用操作符总结

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有