shell程式設計 遍歷目錄下的檔案

2022-06-22 08:15:08 字數 1726 閱讀 4532

假定目錄text下有如下檔案

目錄:dir_1、dir_2、dir_3

檔案:text_1、text_2

遍歷目錄下所有的檔案是目錄還是檔案

if -- if型別:

#!bin/sh

forfilein./*

do

iftest -f $file

then

echo $file 是檔案

fi

iftest -d $file

then

echo $file 是目錄

fi

done

if --else 型別:

#!bin/sh

forfilein./*

do

iftest -f $file

then

echo $file 是檔案

else

echo $file 是目錄

fi

done

結果:

釋義:一.  # 為注釋符,其後面內容不編譯

二.  第一行 #!不是注釋,是對shell的宣告,表明用哪種型別的shell,以及路徑所在。一般必須寫。

詳細解釋可以參考:

三.控制結構:

(一)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    測試是否是目錄

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 是檔案 fiif test d fil...

shell遍歷目錄下所有檔案

filelist ls home work file for file in filelist do echo file done 一定要切記filelist 後邊的那個引號不是單引號,而是tab鍵上邊的那個鍵,或者說是1左邊的那個鍵。否則的話不起作用。唉,自己在上吃虧了好長時間。汗!如果ls後面的...

Shell遞迴遍歷目錄下檔案

遍歷linux某目錄下的所有檔案 bin bash 1是執行指令碼時,輸入的第乙個引數,這裡指的是使用者希望搜尋的目錄 下面的 是對目錄進行判斷,如果為空則使用指令碼所在的目錄 否則,搜尋使用者輸入的目錄 if z 1 d 1 then echo the directory is empty or ...