linux基礎 shell基礎程式設計

2021-10-23 21:09:52 字數 1946 閱讀 1915

以檔案形式存放批量的linux命令集合,該檔案能被shell解釋執行,這種檔案就是shell指令碼程式。通常由一些linux命令,shell命令,注釋和控制語句構成

第一行:指定用哪個程式來編譯和執行指令碼

#!/bin/bush 或 #!/bin/sh
注釋行:使用#號

* 變數名必須以字母或下劃線開頭,後面跟數字字母或下劃線,其他任何字元標誌變數名結束。

* 變數名關於大小寫敏感

* 等號兩邊不能有空格

* 如果要給變數賦空值,要加換行符

顯示變數值

echo $variable  或   echo $
清除變數

unset variable
顯示所有變數

set
環境變數又叫全域性變數,按照慣例需要大寫

* 可被所有的shell環境下訪問

* 如果父shell程序產生了子shell程序,那麼環境變數可被繼承並複製

位置參量:位置參量是一種特殊的內建變數,通常被shell指令碼用來從命令列接收引數,或被函式用來儲存傳遞給他的引數。

符號說明

$0當前指令碼的檔名

$1-s9

第一到第九個位置參量

$第10個位置參量,以此類推還有$…

$#位置參量的個數

$*一單字串顯示所有位置參量

$@未加雙引號與$*相同

$$指令碼執行的當前程序號

$!最後乙個後台執行的程序的程序號

$?顯示前面最後乙個命令的推出狀態,0代表沒有錯誤,其他值代表有錯誤

退出碼:任何命令進行時都將返回乙個退出狀態

通常會在關鍵步驟後判定$?,已確定關鍵步驟是否執行正常

if 判斷

語法:

if

[判斷語句]

;then

執行命令

fi

多重條件

if

[判斷語句]

;then

執行命令

else

執行命令

fi

更複雜的情況

if

[判斷語句]

;then

執行命令

elif

[判斷語句]

;then

執行命令

else

執行命令

fi

for迴圈

例項:

for var in 1 2 3 4 5

doecho

$done

num=10

s=0for

((i=

0;i<$))

do s=

$(($+$))

done

echo

$

while迴圈

語法

while

[condition]

do 執行命令

done

until

[condition]

do 執行命令

done

例項:從檔案中逐行讀取資料

#!/bin/bush

cat$

|while

read line

doecho

$done

linux下shell的基礎程式設計和高階程式設計

有起要注意空格等問題,這個一開始學的時候特別容易出錯,然後導致查了半天!1 helloworld.sh bin bash 使用 bin bash來解析指令碼 echo helloworld 2 變數.sh bin bash num 10name jack age 22 male echo num e...

Linux基礎 shell命令

都知道linux下shell命令很重要,但無奈使慣了windows的使用者接觸命令是在不感冒,不過慢慢來吧,凡事都得有乙個過程。學linux命令最好先了解一下編輯器,因為會涉及到系統檔案的配置編輯,linux用的最多的當屬vi,現在vi的改進版是vim,在最新的linux的版本下vi命令已經是vim...

Linux基礎 shell命令

都知道linux下shell命令很重要,但無奈使慣了windows的使用者接觸命令是在不感冒,不過慢慢來吧,凡事都得有乙個過程。學linux命令最好先了解一下編輯器,因為會涉及到系統檔案的配置編輯,linux用的最多的當屬vi,現在vi的改進版是vim,在最新的linux的版本下vi命令已經是vim...