Linux的shell指令碼

2021-10-01 12:30:57 字數 1761 閱讀 4180

shell 程式設計一般指 shell 指令碼程式設計。

語法:

​ 使用 vi 編輯器新建乙個檔案 hello.sh

#!/bin/bash 

echo "hello world !"

執行

​ 方式1:

​ sh hello.sh

方式2​ chmod +x ./hello.sh #使指令碼具有執行許可權

​ ./hello.sh #執行指令碼

4.1變數:

區域性變數

#!/bin/bash

str="hello"

echo $world

環境變數

​ echo $path

​ echo $home

4.2 特殊字元$#

傳遞到指令碼的引數個數

$*以乙個單字串顯示所有向指令碼傳遞的引數。

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

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

$@與$*相同,但是使用時加引號,並在引號中返回每個引數。

$?顯示最後命令的退出狀態。 0 表示沒有錯誤,其他任何值表明有錯誤。

#!/bin/bash

echo "第乙個引數為: $1";

echo "引數個數為: $#";

echo "傳遞的引數作為乙個字串顯示: $*";

執行: ./test.sh 1 2 3

4.3 運算子

#!/bin/bash

a=1;

b=2;

echo `expr $a + $b`;

echo $((a+b));

echo $[a+b];

4.4 if語句

#!/bin/bash

read -p "please input your name:" name ## read命令用於從控制台讀取輸入資料

## printf '%s\n' $name

if [ $name = root ]

then

echo "hello $, welcome !"

elif [ $name = itcast ]

then

echo "hello $, welcome !"

else

echo "get out please!"

fi

4.5 for語句

方式1:

#!/bin/bash

for n in 1 2 3

do echo $n

done

方式2:

#!/bin/bash

for ((i = 0; i <= 5; i++))

do echo "welcome $i times"

done

4.6 函式

#!/bin/bash

funwithreturn()

funwithreturn

echo "輸入的兩個數字之和為 $? !"

linux的shell指令碼

一.遇到的問題 1.在documents shell document的資料夾下建立第乙個指令碼。但是發現在圖形化介面不能執行shell指令碼。只能到命令列模式下才能執行。感覺太麻煩,我的虛擬機器從圖形化切換到命令列下比較容易,但是從命令列不能切換到圖形化介面。2.切換到documents shel...

LINUX下的shell指令碼 shell簡介篇

什麼是shell?1.shell是linux的一外殼,它包在linux核心的外面,為使用者和核心之間的互動提供了乙個介面 2.當使用者下達指令給作業系統的時候,實際上是把指令告訴shell,經過shell解釋,處理後讓核心做出相應的動作 3.系統的回應和輸出的資訊也由shell處理,然後顯示在使用者...

編寫Linux的shell指令碼

把一些有關聯的linux命令,或者一組完成某一特定功能的linux命令,存放在了乙個檔案中,把這個檔案稱之為shell指令碼,該指令碼真正被稱之為shell指令碼,需要具備這麼幾個特點 需要能夠被bash能夠執行,就相當於在windows的可執行檔案.exe 需要為該指令碼提供乙個標識 在檔案的開頭...