W3Cschool
恭喜您成為首批注冊(cè)用戶(hù)
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
變量就是被賦值后的字符串。那個(gè)賦給變量的值可以是數(shù)字、文本、文件名、設(shè)備或其他類(lèi)型的數(shù)據(jù)。
本質(zhì)上,變量就是執(zhí)行實(shí)際數(shù)據(jù)的指針。Shell 可以創(chuàng)建、賦值和刪除變量。
變量名僅能包含字母、數(shù)字或者下劃線(xiàn)。
約定俗成的,UNIX Shell 的變量名都使用大寫(xiě)。
下面是一些有效的變量名的例子:
_ALI
TOKEN_A
VAR_1
VAR_2
下面是一些無(wú)效的變量名的例子:
2_VAR
-VARIABLE
VAR1-VAR2
VAR_A!
不能使用!
、*
、-
等字符的原因是,這些字符在 Shell 中有特殊用途。
變量可以按照如下方式來(lái)定義:
variable_name=variable_value
比如:
NAME="Zara Ali"
上述例子定義了變量 NAME,然后賦值 "Zara Ali".這種類(lèi)型的變量是常規(guī)變量,這種變量一次只能賦值一個(gè)。
Shell 可以隨心所欲的賦值。比如:
VAR1="Zara Ali"
VAR2=100
為了獲取存儲(chǔ)在變量?jī)?nèi)的值,需要在變量名前加 $.
比如,下面的腳本可以訪(fǎng)問(wèn)變量 NAME 中的值,然后將之打印到 STDOUT:
#!/bin/sh
NAME="Zara Ali"
echo $NAME
會(huì)出現(xiàn)下面的值:
Zara Ali
Shell 使用只讀命令提供了使變量只讀化的功能。這樣的變量,都不能被改變。
比如,下面的腳本中,對(duì)變量 NAME 的值進(jìn)行修改,系統(tǒng)會(huì)報(bào)錯(cuò):
#!/bin/sh
NAME="Zara Ali"
readonly NAME
NAME="Qadiri"
會(huì)出現(xiàn)如下結(jié)果:
/bin/sh: NAME: This variable is read only.
變量的刪除會(huì)告訴 Shell 從變量列表中刪除變量從而,無(wú)法對(duì)其進(jìn)行跟蹤。一旦用戶(hù)刪除了一個(gè)變量,將無(wú)法訪(fǎng)問(wèn)存儲(chǔ)在變量中。
下面是使用 unset 指令的例子:
unset variable_name
上述指令會(huì)取消已定義變量。下面是簡(jiǎn)單的例子:
#!/bin/sh
NAME="Zara Ali"
unset NAME
echo $NAME
上述例子不會(huì)顯示任何信息,不能使用 unset 指令取消被標(biāo)記為只讀模式的變量。
Shell 腳本被執(zhí)行的時(shí)候,主要存在如下三種變量類(lèi)型:
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話(huà):173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: