bash/shell 遍历文件夹下的所有文件

最近在研究shell script,先从简单的一步步写吧。

本文主要写 如何用shell指令设计,遍历生成文件夹下的目录

#!/bin/bash 

function ergodic(){  
    for file in ` ls $1 `  
    do  
        if [ -d $1"/"$file ]   
        then  
             ergodic $1"/"$file  
        else  
             echo "$1/$file" 
        fi  
    done  
}  
INIT_PATH="/home/justine/binst"  
ergodic $INIT_PATH  

第一行,声明文件使用bin/bash执行

第三行,函数名

第四行,bash的for循环,标准格式为for ** in **  do ** done。 其中for ** in **意思是file 在目录中循环,ls生成所有的目录,$1表示第一个参数

第6行,判断是否为文件夹

第7行,如果是文件夹,那么做第8行的操作

第8行,递归循环函数

第10行,如果之前的if不成立,则输出结果

第11行,fi和if相对应表示结束if语句

第14行,定义路径

第15行,将规定的路径作为参数传入函数中


结果如下:


你可能感兴趣的:(bash/shell/awk)