例如:
for ((i=1;i<=10;i++)); doecho $(expr $i \* 4 ); done
將1到10,依次乘以4,然後列印出來。
這裡順便提一下,shell裡面表示式的計算,可以有其他形式:
for ((i=1;i<=10;i++)); doecho $((i * 4)); done
for ((i=1;i<=10;i++)); doecho $[i * 4 ]; done
比如遍歷乙個陣列:
a=(1357911)
for v in $; do
echo
$vdone
上面這段**可以用seq命令簡化:
for i in $(seq1211) ;do
echo $i ;done
列印出所有小寫字母:
for i in ;doecho $i ;done
遍歷指令碼引數:
for i in $* ; doecho
$idone
遍歷當前目錄下所有以.txt結尾的檔案:
for f in $(ls *.txt); doecho
$fdone
可以簡化為:
for f in *.txt; doecho
$fdone
另外,for...in迴圈會對字串按空格分隔進行遍歷:
str="hello world how do you do!
"for i in $str; do
echo
$i ;
done
例如, 按行遍歷乙個檔案:
while read line; do#process line
done
< file
Shell中的迴圈
工作中,我們經常會有重複進行某乙個動作的需求。有的需求是知道重複某個操作多少次,有的是不知道需要重複多少次。所以我們需要根據不同的需求來判斷到底需要使用哪種迴圈控制語句,主要包含 for迴圈,while迴圈,until迴圈。以下一次進行說明。一.until迴圈 until迴圈主要寫法如下,說明 當c...
Shell中的迴圈
for 變數名 in 列表 do 命令1 命令2done當變數值在列表裡,for迴圈即執行依次所有命令,使用變數名訪問列表中取值。命令可為任何有效的shell命令和語句。變數名為任意單詞。in 列表 用法是可選擇,如果不用它,for迴圈使用命令列的位置引數。in 列表 可以包含替換 字串和檔名 bi...
shell中的迴圈結構
shell中的迴圈結構有 for,while和until while和until的語法結構 設計思路基本一致,因此歸為一類討論 for for迴圈有兩種形態 1.列表形態,形如 for var in varlist do command 1 command n done 其思路是 用var依次讀取v...