#! /usr/shtime= $(date " +%Y/%m%d %H:%M:%S") # to obtain the system time
echo ${time}
在資料夾中依filelist 的順序將其命名為filename
for filename in filelist ; doExample:
statements
done
#1:filelist= `ls wrfbdy* |sort` ,
for wrfbdy in `ls wrfbdy* |sort `; do #1
echo $wrfbdy #2
dd=`echo $wrfbdy |cut -d '_' -f 2` #3
hh=`echo $wrfbdy |cut -d '_' -f 3`
echo $dd ' ' $hh
done
將資料夾中所有以wrfbdy為檔頭的檔案依序排好( | sort ),
並且在迴圈中,以"wrfbdy"稱呼該檔名。 (迴圈次數由檔案數目決定)
#2:回傳 變數值
#3:擷取變數中的訊息。
| cut -d '_' -f 2 ==> 將 $wrfbdy 此一字串變數以 "_"符號分隔,
並取出第二個空間(區塊)中的字串,導向為dd 此變數。
同理,變數hh則是為第三空間中的變數。
如:
wrfbdy=wrfbdy_149988_0_1
dd=`echo $wrfbdy |cut -d '_' -f 2`
則dd= 149988
以 "ls "指令顯示目錄與檔案數目
顯示目錄數目:
ls -al | grep "^d" | awk 'END {print "Number of directories: " NR}'
顯示檔案數目:
ls -al | grep "^_" | awk 'END {print "Number of files: " NR}'
Example:
nt= `ls -al |grep "ens" |awk 'END {print NR}`
echo ' number=' ${nt}
如此就會將所在位置底下,檔頭為ens的的目錄數目回傳為 "nt'
沒有留言:
張貼留言