for 迴圈格式:
for 變數 in 範圍
do
命令1
命令2
.....
done
ex:
for f in a b c d
do
echo $f
done
yuanann 發表在 痞客邦 留言(0) 人氣(956)
case 是一種多種選擇的判斷式,可以在程式中,加入複雜多樣的形式,來做多使用者的要求,在語法上要注意的是行程式都是用雙分號來做為結尾,
判斷式是用esac為結尾 esac (ps:就是case反過來囉命令真是有特色 ^^) , 而*表示其它的條件
以下我們 簡單介紹case的語法
case "var" in
case 1 )程式敘述1 ;;
yuanann 發表在 痞客邦 留言(0) 人氣(11,063)
在很多程式語言都有array這樣的資料結構,而Shell Script,當然也不例外,在Shell裡面,array 可以存放字串,整數,陣列,物件 這樣資料在array的元素裡
以下我們用整數來示範array的簡單用法
#array元素指派值的方法
#!/bin/sh
array[0]=0
yuanann 發表在 痞客邦 留言(0) 人氣(12,804)
在使用shell script 除那從命令列上面可以取得參數之外,還有什麼可以取得使用者給的參數呢 ?
答案是read ,這個東東西可以做到程式與人的互動,下面我們來看看簡單的範例,就可以輕易的了解這個東西的用法了
$!/bin/sh
echo -n "Please input a value "
read input
echo "User input the $input
yuanann 發表在 痞客邦 留言(0) 人氣(7,398)
本文簡介function的用法 定義function
#!/bin/sh function function_name ()
{
command 1
command 2
}
#call function
function_name
yuanann 發表在 痞客邦 留言(0) 人氣(21,124)
while Expression(當為 Expression 真時)
do
Commands
done
範例 :
yuanann 發表在 痞客邦 留言(0) 人氣(1,857)
for 迴圈格式:
for 變數 in 範圍
do
命令1
命令2
.....
done
ex:
for f in a b c d
do
echo $f
done
yuanann 發表在 痞客邦 留言(0) 人氣(434)
本文要來簡介 shell script 中if else這個判斷式.這應該是最常用且最簡單的判斷式了
以下用範例來說明
#和 string 去比對 ,如果條件成立,便會輸出Match 否則輸出No Match
#!/usr/bin/sh
string="test"
if [ $string == "test" ] ; then
echo "Match"
else
echo "No Match"
fi
yuanann 發表在 痞客邦 留言(0) 人氣(10,447)
在Shell Script 要如何取得主機的時間呢?
可以利用date 指令來取得,格式如下
date "+%Y %m %d %H:%M:%S"
各個參數簡單說明:
yuanann 發表在 痞客邦 留言(0) 人氣(12,830)
在執行
Shell Script 時,程式會自動產生一些變數:整理如下:這些變數在對於script而言是很有用的變數,像是$?就可以知道上一個指令的結果,這就可以知道上一個指令的執行結果,對於要寫自動化的程式是很好用的.
| 變數名稱 | 說明 |
| $? | 上一個指令的離開狀況,一般指令正常離開會傳回 0。不正常離開則會傳回 1、2 等數值。 |
| $$ | 目前執行中的shell 的 process ID number |
| $! | 最後一個在背景執行的程式的 process number |
| $- | 這個參數包含了傳遞給 shell 旗標 (flag)。 |
| $1 | 代表第一個參數,而參數是在命列上面輸入的。$2 則為第二個參數,依此類推。而 $0 為這個 shell script 的檔名。 |
| $# | 執行時,給這個 Shell Script 參數的總數量 |
| $* | 包含所有輸入的參數,$@ 即代表 $1, $2,....直到所有參數結束。$* 將所有參數無間隔的連在一起,存成一個單一的參數。也就是說 $* 代表了 "$1 $2 $3..."。 |
| $@ | 包含所有輸入的參數,$@ 即代表 $1, $2,....直到所有參數結束。$@ 用將所有參數以空白為間隔,存在 $@ 中。也就是說 $@ 代表了 "$1" "$2" "$3"....。 |
yuanann 發表在 痞客邦 留言(0) 人氣(1,878)