網頁

顯示具有 shell_script 標籤的文章。 顯示所有文章
顯示具有 shell_script 標籤的文章。 顯示所有文章

2009年6月25日 星期四

Shell script tricks

1. The array of shell script 
names=( Jennifer Tonya Anna Sadie )
for name in ${names[@]}
do
   echo $name
done
names=( Jennifer Tonya Anna Sadie )
for (( i = 0 ; i < ${#names[@]} ; i++ ))
do
    echo ${names[$i]}
done
2. Variable substitution for shell script 
$DEVICE0=eth0
$echo "Configure interface " ${!DEVICE${i}}
$n=1
$ eval echo \${$n}
$ n="date"
$ echo $($n)
Output :Wed May 21 20:39:00 EEST 2008
3. Increment i in the while loop 
i=$(($i+1))
i=`expr i + $i`

2005年12月11日 星期日

Shell Script note

${FNAME}
顯示變數值的全部。
/home/kenny/tmp/test.1.sh
${FNAME##/*/}
比對變數值開端﹐如果以 /*/ 開頭的話﹐砍掉最長的部份。 test.1.sh
${FNAME#/*/}
比對變數值開端﹐如果以 /*/ 開頭的話﹐砍掉最短的部份。 kenny/tmp/test.1.sh
${FNAME%.*}
比對變數值末端﹐如果以 .* 結尾的話﹐砍掉最短的部份。
/home/kenny/tmp/test.1
${FNAME%%.*}
比對變數值末端﹐如果以 .* 結尾的話﹐砍掉最長的部份。
/home/kenny/tmp/test
${FNAME/sh/bash}
如果在變數值中找到 sh 的話﹐將第一個 sh 換成 bash
/home/kenny/tmp/test.1.bash
${FNAME//sh/bash}
如果在變數值中找到 sh 的話﹐將全部 sh 換成 bash
/home/kenny/tmp/test.1.bash