0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

shell腳本基礎(chǔ)知識匯總2

jf_78858299 ? 來源:阿Q正磚 ? 作者:阿Q正磚 ? 2023-02-15 10:48 ? 次閱讀

1.3 注釋

單行以 # 開頭的行就是注釋,會被解釋器忽略。

多行以:*<開始,以EOF*結(jié)束,中間的都為注釋,示例如下:

# 注釋內(nèi)容...


:<<EOF
注釋內(nèi)容...
注釋內(nèi)容...
注釋內(nèi)容...
EOF

1.4 變量

定義變量

格式如下,“=”左右兩邊不能有空格

變量名=值

其中變量名的要求為:

  • 命名只能使用英文字母,數(shù)字和下劃線,首個字符不能以數(shù)字開頭。
  • 中間不能有空格,可以使用下劃線 _。
  • 不能使用標(biāo)點(diǎn)符號。
  • 不能使用bash里的關(guān)鍵字

值的話沒有要求,可以為整數(shù)、字符串、數(shù)組等,賦值完某個類型后,后面還可以繼續(xù)再賦值為其他類型,示例如下:

# 定義一個字符串變量
var="hello word"
# 定義一個值為1的變量
var=1
# 定義一個包含a、b、c的數(shù)組變量
var=(a b c)

使用變量

使用一個定義過的變量,只要在變量名前面加美元符號 $ 即可,示例如下:

var="hello word"
# 打印變量var的值,
echo $var
# 如果變量沒有定義過,則值為空
echo $test


# 輸出結(jié)果
hello word

只讀變量

使用 readonly 命令可以將變量定義為只讀變量,只讀變量的值不能被改變。示例如下:

readonly val="ready only"
# 給只讀變量再次賦值會報錯
val="test"


# 輸出結(jié)果
-bash: val:只讀變量

刪除變量

使用 unset 命令可以刪除變量。語法:

unset variable_name

變量被刪除后不能再次使用。 unset 命令不能刪除只讀變量 。示例如下:

var="hello word"
unset var
echo $var


# 輸出結(jié)果為空

1.5 字符串

字符串定義

字符串是shell編程中最常用最有用的數(shù)據(jù)類型,字符串可以用單引號,也可以用雙引號,也可以不用引號(不用引用的情況中間不能有空格)。

str="this is string"
str='this is string'


# 正確示例,無引號無空格
str=thisisstring
# 錯誤示例,無引號有空格
str=this is string

獲取字符串長度

通過${#variable_name}方式獲取,示例如下:

string="abcd"
echo ${#string}


# 輸出結(jié)果
4

1.6 索引數(shù)組

索引數(shù)組定義

數(shù)組中可以存放多個值。Bash Shell 只支持一維數(shù)組(不支持多維數(shù)組),初始化時不需要定義數(shù)組大小。數(shù)組元素的下標(biāo)由 0 開始。

Shell 數(shù)組用括號來表示,元素用"空格"符號分割開,語法格式如下:

array_name=(value1 value2 ... valuen)

賦值也支持指定索引位置賦值,示例如下:

# 數(shù)組賦值常見的兩種方式
array_name=("abc" "def")


array_name[0]="abc"
array_name[1]="def"

獲取數(shù)組長度

同獲取字符串長度一樣,也是通過${#variable_name}方式獲取,示例如下:

array_name=("abc" "def")
# 打印數(shù)組長度
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
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11304

    瀏覽量

    209521
  • 文本編輯器
    +關(guān)注

    關(guān)注

    0

    文章

    28

    瀏覽量

    8108
  • PHP
    PHP
    +關(guān)注

    關(guān)注

    0

    文章

    452

    瀏覽量

    26690
  • Shell腳本
    +關(guān)注

    關(guān)注

    0

    文章

    36

    瀏覽量

    7971
收藏 人收藏

    評論

    相關(guān)推薦

    shell腳本進(jìn)階】幾個常用的shell進(jìn)階腳本

    shell腳本進(jìn)階】幾個常用的shell進(jìn)階腳本
    的頭像 發(fā)表于 09-19 08:59 ?1893次閱讀
    【<b class='flag-5'>shell</b><b class='flag-5'>腳本</b>進(jìn)階】幾個常用的<b class='flag-5'>shell</b>進(jìn)階<b class='flag-5'>腳本</b>

    Shell基礎(chǔ)知識(上)

    shell腳本在日常的Linux系統(tǒng)管理工作中是必不可少的。如果不會寫shell腳本,你就不算是一個合格的管理員。目前,很多單位在招聘Linux系統(tǒng)管理員時,
    發(fā)表于 11-14 09:24 ?529次閱讀

    基礎(chǔ)知識匯總!?。?/a>

    基礎(chǔ)知識匯總!
    發(fā)表于 11-07 18:14

    Shell腳本編程實驗

    指示燈每隔一秒交替閃亮10次按照圖中的腳本一字一句輸入就行了,其中Shell基礎(chǔ)知識一點(diǎn)都不清楚的話多百度下吧,上面有很多相關(guān)知識。這里我就腳本
    發(fā)表于 10-22 18:25

    shell腳本最簡明的教程

    Shell腳本,就是利用Shell的命令解釋的功能,對一個純文本的文件進(jìn)行解析,然后執(zhí)行這些功能,也可以說Shell腳本就是一系列命令的集合
    的頭像 發(fā)表于 10-16 11:27 ?4835次閱讀
    <b class='flag-5'>shell</b><b class='flag-5'>腳本</b>最簡明的教程

    華為EMC基礎(chǔ)知識匯總資源下載

    華為EMC基礎(chǔ)知識匯總資源下載
    發(fā)表于 06-04 11:10 ?129次下載

    傳感器基礎(chǔ)知識及特性資源匯總下載

    傳感器基礎(chǔ)知識及特性資源匯總下載
    發(fā)表于 07-18 09:36 ?25次下載

    109個實用shell腳本分享

    Shell腳本,就是利用Shell的命令解釋的功能,對一個純文本的文件進(jìn)行解析,然后執(zhí)行這些功能,也可以說Shell腳本就是一系列命令的集合
    的頭像 發(fā)表于 03-16 08:58 ?2633次閱讀

    Linux開發(fā)_Makefile規(guī)則與Shell腳本語言

    介紹Linux下Makefile編程知識點(diǎn),Shell腳本知識點(diǎn)。
    的頭像 發(fā)表于 09-17 15:40 ?1290次閱讀

    shell腳本基礎(chǔ)知識匯總1

    Shell 編程跟 JavaScript、php 編程一樣,只要有一個能編寫代碼的文本編輯器和一個能解釋執(zhí)行的腳本解釋器就可以了。 Linux 的 Shell 種類眾多,常見的有:
    的頭像 發(fā)表于 02-15 10:48 ?794次閱讀

    shell腳本基礎(chǔ)知識匯總3

    Shell 編程跟 JavaScript、php 編程一樣,只要有一個能編寫代碼的文本編輯器和一個能解釋執(zhí)行的腳本解釋器就可以了。 Linux 的 Shell 種類眾多,常見的有:
    的頭像 發(fā)表于 02-15 10:49 ?771次閱讀

    shell腳本基礎(chǔ)知識匯總4

    Shell 編程跟 JavaScript、php 編程一樣,只要有一個能編寫代碼的文本編輯器和一個能解釋執(zhí)行的腳本解釋器就可以了。 Linux 的 Shell 種類眾多,常見的有:
    的頭像 發(fā)表于 02-15 10:49 ?667次閱讀

    shell腳本基礎(chǔ)知識

    shell腳本是一個文件,里面存放的是特定格式的指令,系統(tǒng)可以使用腳本解析器翻譯或解析指令并執(zhí)行(無需編譯),shell腳本的本質(zhì)是
    的頭像 發(fā)表于 04-17 15:00 ?1092次閱讀

    Linux Shell腳本經(jīng)典案例分享

    ? 作為一名 Linux 運(yùn)維工程師,會寫好的腳本不僅能提高工作效率,還能有更多的時間做自己的事。最近在網(wǎng)上沖浪的時候,發(fā)現(xiàn)大家對Shell腳本都有“心結(jié)”,要么覺得自己寫出來不好看,要么根本無從下手。 下面分享249個真實
    發(fā)表于 06-16 14:03 ?651次閱讀
    Linux <b class='flag-5'>Shell</b><b class='flag-5'>腳本</b>經(jīng)典案例分享

    shell并行調(diào)用腳本

    Shell腳本中,可以使用一些技巧來實現(xiàn)并行調(diào)用。以下是幾種常見的方法: 使用后臺進(jìn)程:在Shell腳本中,可以使用"command2
    的頭像 發(fā)表于 11-08 10:23 ?959次閱讀