shell for 迴圈參考 linux下shell的for迴圈語句、shell逐行讀取檔案的3種方法
for迴圈語法
for var in item1 item2 ... itemn
do command
done
for迴圈 路徑查詢
在/mx資料夾有檔案 check_list md5result test_for.sh test.sh
語法:for file in filepath/*
filepath2=/mx/*
for file in $
do echo $
done
輸出如下
/mx/check_list
/mx/md5result
/mx/test_for.sh
/mx/test.sh
語法:for file in `find filepath`
filepath=/mx
for file in `find $`
do echo $
done
for迴圈輸出如下
/mx/mx/check_list
/mx/md5result
/mx/test.sh
/mx/test_for.sh
語法:for file in `find filepath -type f ` 只查詢 一般檔案
filepath=/mx
#只查詢 /mx資料夾下的 一般檔案
for file in `find $ -type f`
do echo "$"
done
for迴圈輸出如下 只查詢 一般檔案
/mx/check_list
/mx/md5result
/mx/test.sh
/mx/test_for.sh
while語法:
while condition
do command
done
3.1 cat file | while read 讀取檔案並處理檔案每次讀取一行 ,每一行的內容使用ifs作為分隔符讀檔案 預設情況下ifs是空格,如果需要使用其它的需要重新賦值 例如 ifs=: 參考while read讀取文字內容
例子 有如下檔案
ip user pwd
10.1.1.11 root 123
10.1.1.22 root 111
10.1.1.33 root 123456
10.1.1.44 root 54321
while read 讀取檔案,以空格作為域分隔符,並給每一列取名字。
cat file_path |while read ip user pwd
do echo "$ip--$user--$pwd"
done
3.2 cat file | awk command | while read結合awk 文字檔案處理命令,指定讀取檔案的行 並處理檔案
#從第2行開始讀取檔案
cat file_path | aqk 'nr>1' while read ip user pwd
do echo "$ip--$user--$pwd"
done
shell指令碼 for迴圈
迴圈語句 while對於要求控制迴圈次數 操作物件按數字順序編號,按特定條件執行重複操作。重複測試某個條件時,只要條件成立就會反覆執行 無限 除非強制終止,或者exit語句退出指令碼 for迴圈語句 需要指定乙個變數以及可以取值的取值列表,針對每乙個不同的取值執行相同的命令序列,直到變數值用盡,退出...
shell指令碼 迴圈
迴圈有三種for,while,until,前兩種多種語言都有,大同小異,最後那種用的少,咱們就不說了 老規矩,上來先看 塊 root localhost scripts bash ceshi.sh 12 3456 78910 root localhost scripts cat ceshi.sh b...
shell 指令碼 for 迴圈
語法一 for 變數 in 值1 值2 值3 do程式 done 例項11 bin bash 2 shijian zaoshang zhongwu xiawu wanshang 3 for time in shijian 4 do5echo time 6 done 例項21 bin bash 2fo...