1.3 注釋
單行以 # 開(kāi)頭的行就是注釋?zhuān)瑫?huì)被解釋器忽略。
多行以:
*<
EOF
*結(jié)束,中間的都為注釋?zhuān)纠缦拢?/em>
# 注釋內(nèi)容...
:<<EOF
注釋內(nèi)容...
注釋內(nèi)容...
注釋內(nèi)容...
EOF
1.4 變量
定義變量
格式如下,“=”左右兩邊不能有空格
變量名=值
其中變量名的要求為:
- 命名只能使用英文字母,數(shù)字和下劃線,首個(gè)字符不能以數(shù)字開(kāi)頭。
- 中間不能有空格,可以使用下劃線 _。
- 不能使用標(biāo)點(diǎn)符號(hào)。
- 不能使用bash里的關(guān)鍵字
值的話沒(méi)有要求,可以為整數(shù)、字符串、數(shù)組等,賦值完某個(gè)類(lèi)型后,后面還可以繼續(xù)再賦值為其他類(lèi)型,示例如下:
# 定義一個(gè)字符串變量
var="hello word"
# 定義一個(gè)值為1的變量
var=1
# 定義一個(gè)包含a、b、c的數(shù)組變量
var=(a b c)
使用變量
使用一個(gè)定義過(guò)的變量,只要在變量名前面加美元符號(hào) $
即可,示例如下:
var="hello word"
# 打印變量var的值,
echo $var
# 如果變量沒(méi)有定義過(guò),則值為空
echo $test
# 輸出結(jié)果
hello word
只讀變量
使用 readonly
命令可以將變量定義為只讀變量,只讀變量的值不能被改變。示例如下:
readonly val="ready only"
# 給只讀變量再次賦值會(huì)報(bào)錯(cuò)
val="test"
# 輸出結(jié)果
-bash: val:只讀變量
刪除變量
使用 unset 命令可以刪除變量。語(yǔ)法:
unset variable_name
變量被刪除后不能再次使用。 unset 命令不能刪除只讀變量 。示例如下:
var="hello word"
unset var
echo $var
# 輸出結(jié)果為空
1.5 字符串
字符串定義
字符串是shell編程中最常用最有用的數(shù)據(jù)類(lèi)型,字符串可以用單引號(hào),也可以用雙引號(hào),也可以不用引號(hào)(不用引用的情況中間不能有空格)。
str="this is string"
str='this is string'
# 正確示例,無(wú)引號(hào)無(wú)空格
str=thisisstring
# 錯(cuò)誤示例,無(wú)引號(hào)有空格
str=this is string
獲取字符串長(zhǎng)度
通過(guò)${#variable_name}
方式獲取,示例如下:
string="abcd"
echo ${#string}
# 輸出結(jié)果
4
1.6 索引數(shù)組
索引數(shù)組定義
數(shù)組中可以存放多個(gè)值。Bash Shell 只支持一維數(shù)組(不支持多維數(shù)組),初始化時(shí)不需要定義數(shù)組大小。數(shù)組元素的下標(biāo)由 0 開(kāi)始。
Shell 數(shù)組用括號(hào)來(lái)表示,元素用"空格"符號(hào)分割開(kāi),語(yǔ)法格式如下:
array_name=(value1 value2 ... valuen)
賦值也支持指定索引位置賦值,示例如下:
# 數(shù)組賦值常見(jiàn)的兩種方式
array_name=("abc" "def")
array_name[0]="abc"
array_name[1]="def"
獲取數(shù)組長(zhǎng)度
同獲取字符串長(zhǎng)度一樣,也是通過(guò)${#variable_name}
方式獲取,示例如下:
array_name=("abc" "def")
# 打印數(shù)組長(zhǎng)度
echo ${#array_name}
# 輸出結(jié)果:
2
讀取數(shù)組元素
指定索引位置的使用${array_name[index]}
,全部的使用${array_name[*]}
,示例如下:
array_name=("abc" "def")
# 讀取數(shù)組指定索引元素
echo ${array_name[0]}
# 讀取數(shù)組全部的元素
echo ${array_name[*]}
#輸出結(jié)果
abc
abc def
-
Linux
+關(guān)注
關(guān)注
87文章
11473瀏覽量
212980 -
文本編輯器
+關(guān)注
關(guān)注
0文章
28瀏覽量
8228 -
PHP
+關(guān)注
關(guān)注
0文章
454瀏覽量
27313 -
Shell腳本
+關(guān)注
關(guān)注
0文章
36瀏覽量
8199
發(fā)布評(píng)論請(qǐng)先 登錄
Shell基礎(chǔ)知識(shí)(上)
Shell腳本編程實(shí)驗(yàn)
shell腳本最簡(jiǎn)明的教程

109個(gè)實(shí)用shell腳本分享
Linux開(kāi)發(fā)_Makefile規(guī)則與Shell腳本語(yǔ)言
shell腳本基礎(chǔ)知識(shí)匯總1
shell腳本基礎(chǔ)知識(shí)匯總3
shell腳本基礎(chǔ)知識(shí)匯總4
shell腳本基礎(chǔ)知識(shí)
Linux Shell腳本經(jīng)典案例分享

shell并行調(diào)用腳本
樹(shù)莓派新手必看!在樹(shù)莓派上編寫(xiě)和運(yùn)行 Shell 腳本!

評(píng)論