日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

shell编程基本语法

發(fā)布時(shí)間:2025/4/5 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 shell编程基本语法 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

編寫shell腳本的時(shí)候,最前面要加上一行:#!/bin/bash,因?yàn)閘inux里面不僅僅只有bash一個(gè)解析器,還有其它的,它們之間的語(yǔ)法會(huì)有一些不同,所以最好加上這一句話,告訴系統(tǒng)要用這個(gè)解析器。

一.shell變量

shell變量和一些編程語(yǔ)言不同,一般shell的變量賦值的時(shí)候不用帶“$”,而使用或者輸出的時(shí)候要帶“$”。加減乘除的時(shí)候要加兩層小括號(hào)。括號(hào)外面要有一個(gè)“$”,括號(hào)里面的變量可以不用“$”。需要注意的是,變量賦值,變量使用的時(shí)候不能有空格,否則會(huì)被解析成命令,報(bào)錯(cuò)無此命令。

例子:

結(jié)果如下圖:

二.shell變量表達(dá)式

例子:

結(jié)果如圖:

三.shell測(cè)試判斷test或[]

需要注意的是使用[]的時(shí)候必須要每個(gè)變量之間都要有空格,和左右中括號(hào)也要有空格,否則報(bào)錯(cuò)。

結(jié)果如圖:

四.shell條件分支結(jié)構(gòu)語(yǔ)句

1.單分支判斷語(yǔ)句

格式:if 條件 ; then 結(jié)果 fi ,最后面一定要有fi,在shell腳本里面,控制分支結(jié)構(gòu)結(jié)束都要和開頭的單詞相反,例如,if <–> fi,case <–> esac。

結(jié)果如圖:

2.雙分支判斷語(yǔ)句

結(jié)果如圖:

3.多分支判斷語(yǔ)句

多分支判斷有兩種,和C語(yǔ)言的一樣 if else if,case。只是形式上有一些不同。

結(jié)果如圖:


結(jié)果如圖:

五.shell循環(huán)語(yǔ)句

1.while語(yǔ)句

while語(yǔ)句是只要條件為真就執(zhí)行下面語(yǔ)句。
格式:
while 條件
do
語(yǔ)句
done

需要注意的是,這里的條件除了 while true 可以這樣寫,其它的條件都要用 test或者 []來判斷


2.until語(yǔ)句

until語(yǔ)句是只要條件為假就執(zhí)行下列語(yǔ)句
格式:
until 條件
do
語(yǔ)句
done

結(jié)果如圖:

3.for語(yǔ)句

格式:
for 變量 in 列表
do
語(yǔ)句
done

結(jié)果如圖:

六.shell函數(shù)

格式:
[function] funcName()
{
語(yǔ)句
[return 返回值]
}
返回值是可選的,如果沒有顯示return 則默認(rèn)返回最后一條語(yǔ)句執(zhí)行的結(jié)果。

Shell 函數(shù)返回值只能是整數(shù),一般用來表示函數(shù)執(zhí)行成功與否,0表示成功,其他值表示失敗。如果 return 其他數(shù)據(jù),比如一個(gè)字符串,往往會(huì)得到錯(cuò)誤提示:“numeric argument required”。

如果一定要讓函數(shù)返回字符串,那么可以先定義一個(gè)變量,用來接收函數(shù)的計(jì)算結(jié)果,腳本在需要的時(shí)候訪問這個(gè)變量來獲得函數(shù)返回值。

函數(shù)參數(shù)從$1到$n,$0 是文件名。

例子:

結(jié)果如圖:

返回字符串,報(bào)錯(cuò)

結(jié)果如圖:

轉(zhuǎn)載于:https://blog.51cto.com/12630492/2169881

總結(jié)

以上是生活随笔為你收集整理的shell编程基本语法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。