• 正文
    • 1、變量名的定義
    • 2、變量的賦值
    • 3、變量的使用
    • 4、變量的修改
    • 5、變量的刪除
    • 6、將變量設置為只讀變量
  • 推薦器件
  • 相關推薦
申請入駐 產業(yè)圖譜

飛凌嵌入式ElfBoard ELF 1板卡-shell腳本編寫之變量

2024/08/29
1516
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

變量是任何一種編程語言都必不可少的組成部分,變量用來存放各種數(shù)據(jù)。腳本語言在定義變量時通常不需要指明類型,直接賦值就可以,Shell變量也遵循這個規(guī)則。每一個變量的值都是以字符串的形式存儲。

1、變量名的定義

變量名定義需要注意以下幾點:

變量名由數(shù)字、字母、下劃線組成;

必須以字母或者下劃線開頭;

不能使用Shell里的關鍵字(如,$,#,?等,通過help命令可以查看保留關鍵字)。

2、變量的賦值

賦值“=”左右不能有空格。

變量值可以加單引號、雙引號、或者不加引號, 如果變量值包含了空格、或tab等空白符號,那么就必須使用引號包圍起來。其中加單引號的變量值,輸出時,直接將變量值當做一串字符串輸出,不關心變量值中是否存在變量和命令。而加雙引號的變量值,輸出時會先解析里面的變量和命令,按照解析后的結果進行輸出。

變量值可以是一個命令執(zhí)行的結果,使用反引號和$()的方式,可以將命令執(zhí)行結果賦值給變量。

3、變量的使用

使用一個定義過的變量,只要在變量名前面加美元符號$即可,變量名可以使用{ }包圍起來,也可不使用{ }。

舉例說明(為了方便,我們直接在shell環(huán)境終端進行舉例演示變量的使用,不再寫入腳本,其與在腳本中使用方法一致)。

1)變量值無空格

var=value

使用echo輸出變量var,echo $var或者echo ${var},如圖:

也可以加上單引號或者雙引號:

var='value'或var="value":

2)變量值有空格

var='value 0'或var="value 0":

3)將命令執(zhí)行結果賦值給變量

首先建立一個test.txt文件,輸入內容為“my test!!”:

使用反引號方式包括命令“cat test.txt”,將test.txt中內容賦予變量var:

使用$()方式賦值給var:

4)變量中引用變量或者命令的情況

var0=123;

使用單引號定義var1的值:var1='var0 =${var0}';

使用雙引號定義var1的值:var2="var0 =${var0}";

看執(zhí)行結果:

可以看出var1的值直接當做字符串輸出,而var2的值,經過解析變量中的變量var0之后進行才輸出。

4、變量的修改

變量的修改就比較簡單了,直接給定義后的變量二次賦值就可以了。

5、變量的刪除

刪除一個定義過得變量,使用unset命令。

6、將變量設置為只讀變量

也可以將變量設置為只讀模式,不允許修改,使用readonly命令。設置為只讀變量后,不能用unset刪除變量。如果還是用該變量,需要重啟新的終端操作。

可以看到使用readonly命令之后,在此修改var變量,沒有修改成功。

推薦器件

更多器件
器件型號 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊 ECAD模型 風險等級 參考價格 更多信息
CY62177EV30LL-55ZXIT 1 Cypress Semiconductor Standard SRAM, 2MX16, 55ns, CMOS, PDSO48, 12 X 18.40 MM, 1 MM HEIGHT, LEAD FREE, MO-142, TSOP1-48
暫無數(shù)據(jù) 查看
HFBR-2412MZ 1 Broadcom Limited Receiver,
$243.12 查看
LE88276DLCT 1 Microsemi Corporation Analog Transmission Interface,
$33.67 查看
飛凌嵌入式

飛凌嵌入式

保定飛凌嵌入式技術有限公司,創(chuàng)建于2006年,是一家專注嵌入式核心控制系統(tǒng)研發(fā)、設計和生產的高新技術企業(yè),是國內較早專業(yè)從事嵌入式技術的企業(yè)之一。 經過十幾年的發(fā)展與積累,公司擁有業(yè)內優(yōu)秀的軟硬件研發(fā)團隊,在北京及保定建立兩大研發(fā)基地,在蘇州、深圳設有華東、華南技術服務中心,并在北美、歐洲以及亞太等其他國家和地區(qū)擁有國際業(yè)務網絡。公司研發(fā)的智能設備核心平臺廣泛應用于物聯(lián)網、工控、軌道交通、醫(yī)療、電力、商業(yè)電子、智能家居、安防、機器人、環(huán)境監(jiān)測等諸多領域。

保定飛凌嵌入式技術有限公司,創(chuàng)建于2006年,是一家專注嵌入式核心控制系統(tǒng)研發(fā)、設計和生產的高新技術企業(yè),是國內較早專業(yè)從事嵌入式技術的企業(yè)之一。 經過十幾年的發(fā)展與積累,公司擁有業(yè)內優(yōu)秀的軟硬件研發(fā)團隊,在北京及保定建立兩大研發(fā)基地,在蘇州、深圳設有華東、華南技術服務中心,并在北美、歐洲以及亞太等其他國家和地區(qū)擁有國際業(yè)務網絡。公司研發(fā)的智能設備核心平臺廣泛應用于物聯(lián)網、工控、軌道交通、醫(yī)療、電力、商業(yè)電子、智能家居、安防、機器人、環(huán)境監(jiān)測等諸多領域。收起

查看更多

相關推薦