`

linux shell 遍历指定目录下的所有文件夹

阅读更多

在linux 中,如何遍历指定目录下的所有文件夹呢?

要求能搜索结果中包含隐藏文件夹

脚本名:ergodic_folder.sh

脚本内容:

#!/bin/sh
list_alldir(){
    for file2 in `ls -a $1`
    do
        if [ x"$file2" != x"." -a x"$file2" != x".." ];then
            if [ -d "$1/$file2" ];then
                echo "$1/$file2"
                list_alldir "$1/$file2"
            fi
        fi
    done
}

list_alldir ./test
 

测试如下:

 

[root@localhost whuang]# ./ergodic_folder.sh

./test/.abc

./test/.abc/.ccc

./test/bbb


分享到:
评论
2 楼 hw1287789687 2013-03-21  
改进如下:
#!/bin/sh  
list_alldir(){  
    for file2 in `ls -A $1`  
    do  
            if [ -d "$1/$file2" ];then  
                echo "$1/$file2"  
                list_alldir "$1/$file2"  
            fi   
    done  
}  
  
list_alldir ./test  
1 楼 DiaoCow 2013-01-08  
find ./test  -type d  实际工作发现,遍历目录时能用find就用find,速度会快很多

相关推荐

    【shell】遍历文件夹下所有文件

    对linux命令tree的简单实现,遍历指定文件夹下的所有文件

    详解shell 遍历文件夹内所有文件并打印绝对路径

    使用`"$1"/*`来遍历指定目录下的所有项。 3. **文件类型判断**: ```bash if [ -f "$file" ]; then # 处理文件... else # 递归调用 fi ``` - `[ -f "$file" ]`: 检查`$file`是否为普通文件。 - 如果是文件...

    linux Shell获取某目录下所有文件夹的名称

    ### Linux Shell 获取某目录下所有文件夹的名称 在Linux环境下,经常需要处理各种文件及文件夹的操作。本文将详细介绍如何使用Linux Shell脚本来获取指定目录下的所有子目录(文件夹)名称,并对其进行一些基本的...

    使用Shell遍历目录及其子目录中的所有文件方法

    函数内部使用`for`循环遍历指定目录下的所有文件和子目录。`ls $1`命令用于列出目录中的所有内容。然后,`if [ -d $1"/"$file ]`语句检查当前元素是否为目录,如果满足条件,函数会递归地调用自身来处理子目录;否则...

    利用shell脚本遍历文件夹内所有的文件并作整理统计的方法

    在本文中,我们将探讨如何利用Shell脚本来遍历文件夹内的所有文件,并进行整理统计。Shell脚本是一种强大的工具,它允许我们自动化Linux或Unix系统中的文件处理任务。在这个案例中,我们将看到如何通过递归方法遍历...

    shell脚本可配置化读取文件夹中文件名称.rar

    以下是一个基础的shell脚本示例,用于读取当前目录下所有文件的名称: ```bash #!/bin/bash # 遍历当前目录下的所有文件 for file in * do # 如果是文件(而非目录) if [ -f "$file" ]; then echo "$file" # ...

    实例18 如何获取指定文件夹下的所有文件夹

    这段脚本会打印出`C:\path\to\directory`下所有子文件夹的完整路径。 2. **Linux/Unix shell脚本**: 在Linux或Unix系统中,使用`find`命令是获取子目录的常见方法: ``` find /path/to/directory -type d ```...

    遍历文件夹中的路径

    批处理文件是基于DOS命令的脚本,可以通过`FOR /R`命令来遍历指定目录及其子目录下的所有文件。例如,以下批处理脚本会输出所有文件的完整路径: ```batch @echo off for /r %cd% %%a in (*) do echo 文件名: %%a `...

    linux shell脚本攻略

    - **实现思路**:使用 `for` 循环遍历目录下的文件,使用 `mv` 命令进行重命名。 - **脚本示例**: ```bash #!/bin/bash for file in /path/to/files/*; do if [ -f "$file" ]; then mv "$file" "$(dirname ...

    Q702697 怎么将一个文件拷贝到指定目录下的所有子文件夹中

    当需要将一个文件拷贝到指定目录下的所有子文件夹中时,这通常涉及到批量复制和递归操作。以下是一些关于如何实现这一目标的详细步骤和知识点: 1. **路径与目录**:在操作系统中,目录是一种组织文件的方式,每个...

    linux下采用shell脚本实现批量为指定文件夹下图片添加水印的方法

    ### Linux下采用Shell脚本实现批量为指定文件夹下的图片添加水印 #### 知识点一:Imagemagick的安装与使用 在Linux环境下批量处理图片时,经常需要用到Imagemagick这款强大的图像处理工具。Imagemagick支持多种...

    shell获取目录下所有文件夹的名称并输出的实例

    在本实例中,我们将探讨如何使用Shell脚本来获取指定目录下的所有文件夹(子目录)的名称并进行输出。这在需要遍历目录结构、进行批量操作或者自定义文件管理系统时非常有用。 首先,让我们逐一分析提供的三种方法...

    shell脚本可配置化备份文件夹及子文件.rar

    3. **文件和目录遍历**:`find`命令可以用来查找并处理指定目录下的所有文件和子目录。例如,`find /path/to/source -type f`将列出所有文件,`find /path/to/source -type d`则列出所有子目录。这些结果可以作为...

    Linux Shell获取文件夹下的文件名方法

    当我们需要获取特定文件夹下的所有文件名时,无需借助复杂的编程语言,简单易用的Shell命令就能轻松实现。本文将详细解释如何使用Linux Shell来获取文件夹下的文件名,并给出具体的示例脚本。 首先,我们需要理解...

    linux下shell编程

    例如,你可以用for循环遍历文件夹中的所有文件,如`for file in *; do echo "$file"; done`。 5. **函数**:Shell脚本支持自定义函数,通过function关键字定义,如`function myfunc() { commands; }`,并在脚本中...

    Linux Shell在目录下使用for循环结合if查找文件的巧用

    在这里,`$2`是用户指定的目录,`${2}*`表示遍历该目录下的所有文件。 通过这种方式,我们可以根据实际需求灵活地调整查找策略。这种技巧在处理大量文件或需要自动化查找特定文件的场景中非常有用。理解并掌握如何...

    文件夹,文件录入数据库

    例如,Python的os和os.path模块可以用来遍历文件夹,sqlite3或pymysql库可以用于与数据库交互。在脚本中,我们遍历文件夹,获取每个文件的信息,然后将这些信息插入到数据库表中。 此外,安全性和权限控制也是重要...

    Shell脚本实现递归删除空文件夹

    `find`命令用于查找指定目录下的所有一级子目录(`-mindepth 1 -maxdepth 1 -type d`),并将结果通过管道传递给`while`循环。在循环中,`if`语句检查子目录内是否有任何文件(`-mindepth 1 -type f`),如果没有,...

Global site tag (gtag.js) - Google Analytics