使用外殼變數

2021-04-13 13:09:09 字數 1541 閱讀 1948

就像其它的任何高階語言一樣,在外殼指令碼中使用變數也是十分重要的。

1.給變數賦值  

在pdksh和bash中,給變數賦值的方法是一樣的,即在變數名後跟著等號和變數值。例如,想要把5賦給變數count,則使用如下的命令:

count=5 (注意,在等號的兩邊不能有空格)

在tcsh中,可以使用如下的命令:

set count=5

因為外殼語言是一種不需要型別檢查的解釋語言,所以,在使用變數之前無須事先定義,這和c或pascal語言不一樣。這也說明你可以使用乙個變數來儲存字串或整數。給字串賦值的方法和給整數賦值的方法一樣,例如

name=garry  (在pdksh和bash中)

set name=garry (在tcsh中)

讀取變數的值

可以使用$讀取變數的值。例如,用如下的命令將count變數的內容輸出到螢幕上:

echo $count

位置變數和其他系統變數

位置變數用來儲存外殼程式後面所跟的引數。第乙個引數儲存在變數1中,第二個引數儲存在變數2中,依次類推。這些變數為系統保留變數,所以你不能為這些變數賦值。同樣,你可以使用$來讀取這些變數的值。例如,你可以編寫乙個外殼程式reverse,執行過程中它有兩個變數。輸出時,將兩個變數的位置顛倒。

#program reverse,prints the command line parameters out in reverse order

echo "$2" "$1"

在外殼下執行此外殼程式:

reverse hello there

其輸出入下:

there hello

除了位置變數外,還有其他的一些系統變數,下面分別加以說明:

有些變數在啟動外殼時就已經存在於系統中,你可以使用這些系統變數,並且可以賦予新值:

$home          使用者自己的目錄。

$path            執行命令時所搜尋的目標。

$tz                  時區。

$mailcheck                  每隔多少秒檢查是否有新的郵件。

$ps1               在外殼命令行的提示符。

$ps2               在命令尚未打完時,外殼要求再輸入時的提示符。

$manpathman               指令的搜尋路徑。

有些變數在執行外殼程式時系統就設定好了,並且你不能加以修改:

$#                          儲存外殼程式中命令列引數的個數。

$?                          儲存上乙個執行命令的返回值。

$*                           儲存外殼程式的所有引數。

$0                          儲存外殼程式的程式名。

"$@"                      儲存所有命令列輸入的引數,分別表示為(「$1」  "$2" .....).

$!                           儲存上乙個後台執行命令的pid.

投光燈外殼 LED投光燈外殼特性

在對led燈具關注的過程中,led燈具本身在節能性方面是很好的一種狀態,而在關注led投光燈製作完成的產品外殼的過程中,大家則能夠了解到led投光燈產品在使用的多個部分效果是很不錯的。戶外大型投光燈要達到一定的照明要求,基本都是大功率led晶元。所以led投光燈的防水防塵及散熱三項效能是決定其品質和...

Delphi 外殼程式設計( )

摘要 本文介紹了一種有別於通常的windows外殼程式設計方法。採用com技術,通過windows提供的外殼介面實現對其的程式設計。一 引言 都是執行於windows 作業系統 之下的。在 程式開發過程中也經常要在自己的應用程式中加入一些windows系統本身就有的功能,比如檔案的拷貝 刪除 查詢以...

外殼模式(shell)

系統程式設計師成長計畫 這本書中提到了外殼模式的概念。所謂的外殼模式的作用就是 不需要修改原來的應用程式,而控制它的輸入和輸出 即使用者介面 同時應用程式也不知道外殼的存在。當然這樣理解會比較麻煩,我們就舉個簡單的例子,比如已經存在乙個應用程式,我們想給該應用程式增添乙個新的使用者介面,這裡有兩種選...