新聞中心
Shell變量
變量就是被賦值后的字符串。那個賦給變量的值可以是數(shù)字、文本、文件名、設備或其他類型的數(shù)據(jù)。

成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供津南網(wǎng)站建設、津南做網(wǎng)站、津南網(wǎng)站設計、津南網(wǎng)站制作等企業(yè)網(wǎng)站建設、網(wǎng)頁設計與制作、津南企業(yè)網(wǎng)站模板建站服務,十多年津南做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡服務。
本質上,變量就是執(zhí)行實際數(shù)據(jù)的指針。Shell 可以創(chuàng)建、賦值和刪除變量。
變量名
變量名僅能包含字母、數(shù)字或者下劃線。
約定俗成的,UNIX Shell 的變量名都使用大寫。
下面是一些有效的變量名的例子:
_ALI
TOKEN_A
VAR_1
VAR_2下面是一些無效的變量名的例子:
2_VAR
-VARIABLE
VAR1-VAR2
VAR_A!不能使用!、*、-等字符的原因是,這些字符在 Shell 中有特殊用途。
定義變量
變量可以按照如下方式來定義:
variable_name=variable_value比如:
NAME="Zara Ali"上述例子定義了變量 NAME,然后賦值 "Zara Ali".這種類型的變量是常規(guī)變量,這種變量一次只能賦值一個。
Shell 可以隨心所欲的賦值。比如:
VAR1="Zara Ali"
VAR2=100
訪問變量
為了獲取存儲在變量內的值,需要在變量名前加 $.
比如,下面的腳本可以訪問變量 NAME 中的值,然后將之打印到 STDOUT:
#!/bin/sh
NAME="Zara Ali"
echo $NAME會出現(xiàn)下面的值:
Zara Ali
只讀變量
Shell 使用只讀命令提供了使變量只讀化的功能。這樣的變量,都不能被改變。
比如,下面的腳本中,對變量 NAME 的值進行修改,系統(tǒng)會報錯:
#!/bin/sh
NAME="Zara Ali"
readonly NAME
NAME="Qadiri"會出現(xiàn)如下結果:
/bin/sh: NAME: This variable is read only.
刪除變量
變量的刪除會告訴 Shell 從變量列表中刪除變量從而,無法對其進行跟蹤。一旦用戶刪除了一個變量,將無法訪問存儲在變量中。
下面是使用 unset 指令的例子:
unset variable_name上述指令會取消已定義變量。下面是簡單的例子:
#!/bin/sh
NAME="Zara Ali"
unset NAME
echo $NAME上述例子不會顯示任何信息,不能使用 unset 指令取消被標記為只讀模式的變量。
變量類型
Shell 腳本被執(zhí)行的時候,主要存在如下三種變量類型:
- 局部變量:該類型變量只會在當前 Shell 實例內有效。他們無法適用于由 Shell 啟動的程序。他們僅在命令提示符處進行設置。
- 環(huán)境變量:環(huán)境變量對 Shell 的任何子進程都有效。部分程序是需要正確的調用函數(shù)才需要環(huán)境變量。通常,Shell 腳本只會定義程序運行需要的環(huán)境變量。
- Shell 變量:該類型變量是由 Shell 設置的專用變量,是用來正確調用函數(shù)用的。有時這些變量是環(huán)境變量,有時是局部變量。
當前題目:創(chuàng)新互聯(lián)UNIX教程:UNIXShell變量
網(wǎng)頁網(wǎng)址:http://m.5511xx.com/article/dphoded.html


咨詢
建站咨詢
