linux 數(shù)字循環(huán)、目錄循環(huán)的寫法展示

給幾個(gè)例子展示循環(huán)并傳參的基本寫法。要點(diǎn):等號(hào)之間不要加空格,引用變量的值要用${},路徑轉(zhuǎn)義要用雙引號(hào)引起來。
循環(huán)格式為
for
do
(一些內(nèi)容)
done
數(shù)字循環(huán)
連續(xù)循環(huán) (從1到100之類的)
1. 類似C語(yǔ)言寫法
#!/bin/bash ? ??
for((ind=1;ind<=10;ind++));? ?
do
value=$ind
./my_bash.sh $value
done??
2. 類似MATLAB寫法
#!/bin/bash?? ??
for ind in {1..10}?
do
value=$ind
./my_bash.sh $value
done??
非連續(xù)循環(huán)(枚舉幾個(gè)數(shù)字)
#!/bin/bash? ? ?
indices=(1 3 4 5)
for ind in ${indices[@]};?
do
value=$ind
./my_bash.sh $value
done??
目錄循環(huán)
這是一段腳本,作用是讀取位于/home/yourfilepath/ 目錄下的所有子目錄,并且打開每個(gè)子目錄中的txyz1.txt文件并讀取里面的幾個(gè)數(shù)傳參給x,y,z,t四個(gè)變量。其中txyz1.txt是一行四個(gè)浮點(diǎn)數(shù),由逗號(hào)隔開。
#!/bin/bash??
dir_root=”/home/“
input_dir="${dir_root}/yourfilepath/"
for d in?"${output_dir}/"*; do
echo "$d"
? if [[ ! -d "$d" ]]; then
? ? continue
? fi
? file="$d/txyz1.txt"
? if [[ ! -f "$file" ]]; then
? ? continue
? fi
? IFS="," read t x y z < "$file"
? # 打印這四個(gè)浮點(diǎn)數(shù)
time=$((t * 10))
? echo "x=$x"
echo "y=$y"?
echo "z=$z"?
echo "time=${time}"
done