shell编程--遍历目录下的文件

假定目录text下有如下文件
      目录:dir_1、dir_2、dir_3

      文件:text_1、text_2

遍历目录下所有的文件是目录还是文件

if -- if类型:

#!bin/sh
for file in ./*
do
    if test -f $file
    then
        echo $file 是文件
    fi
    if test -d $file
    then
        echo $file 是目录
    fi
done

if --else 类型:

#!bin/sh
for file in ./*
do
    if test -f $file
    then
        echo $file 是文件
    else
        echo $file 是目录
    fi
done

结果:

        

释义:

一.  # 为注释符,其后面内容不编译

二.  第一行 #!不是注释,是对shell的声明,表明用哪种类型的shell,以及路径所在。一般必须写。

     详细解释可以参考:http://blog.163.com/hashes@yeah/blog/static/16867631220101029847420/

三.控制结构:

     (一)if语句:

      1)if语句:

          if  条件

          then   

                命令

          fi 

       2)if ……else语句:

            if 条件

            then

                  命令

            else

                 命令

             fi

         (二)for语句:

            for 条件

            do

                命令

            done

         (三)while语句:

            while

            do

                 命令

            done

四.   * 所有的意思, ./是本目录的意思

      for ./*    本目录中的所有

五. test -f    测试是否是文本

     test -f    测试是否是目录

    

      

 

 

posted @ 2012-12-19 19:02  jihite  阅读(212021)  评论(4编辑  收藏  举报