指令碼基礎2

2022-07-18 04:09:11 字數 2065 閱讀 8343

在指令碼內

#!/bin/bash

read -p "

請輸入乙個數字

"num

if [ $num -eq 60 ];then

echo

"猜對了

"else

echo

"猜錯了

"fi

這是乙個完整的但分值if條件語句,兩個動作必定執行乙個。if如果,then那麼,else否則,fi結尾。

在指令碼內
#!/bin/bash

read -p "請輸入乙個數字"num  這是讓使用者給num賦值

if [ $num -eq 60 ];then

echo "猜對了"

elif [ $num -lt 60 ];then

echo "猜小了"

else

echo "猜錯了"

fi

這是乙個多分支if條件語句,三個動作必定也只能執行乙個,寫多分支語句時要注意,寫第乙個條件的範圍不能涵蓋第二個條件,優先順序是從上到下執行的,符合乙個就不會再往下看其他條件了。

在指令碼內

#!/bin/bash

for i in12

345do

echo

$idone

for是迴圈,讓i從1 2 3 4 5裡依次迴圈取值,有幾個值就取幾次。do是開始做什麼,done是結束,他們之間叫作乙個迴圈體。

在指令碼內

#!/bin/bash

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

doecho $i

done

寫兩個小括號是讓shell支援c語言,首先i賦值0進入迴圈體,輸出0到螢幕,然後執行i++這個動作(在自身+1),判斷i此時符不符合小於10的條件,如果不符合就會進行下一輪迴圈,直到符合條件退出迴圈體。

在指令碼內

#!/bin/bash

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

doecho

$idone

兩個分號之間什麼都不加就是無限迴圈,因為中間判斷是空的。

在指令碼內

#!/bin/bash

for i in

doecho

$ilet i++ 或

((i++))

done

let i++ 是讓shell認識他,兩個小括號是讓shell支援c語言。

在指令碼內

#!/bin/bash

read i

while [ $i -lt 10]do

echo

$i let i++

sleep

1done

這是while迴圈,後面跟的是終止迴圈的條件,如果使用者輸入0,那麼會輸入0~9,sleep 1 是讓等待1秒後進入下次迴圈

如果是while : 那麼就是無限迴圈終止條件為空。

在指令碼內

#!/bin/bash

read i

case $i in

start)

echo

"服務啟動";;

stop)

echo

"服務停止";;

*)echo

"重新輸入";;

esac

case是類似if的一種語句,他們最大的區別就是case是平級的,沒有優先順序,通常case用來做功能選單和服務啟動指令碼。

在指令碼內

#!/bin/bash

function

(也可以不寫) aihao()

aihao

這個是函式體的格式,在指令碼內如果不呼叫函式體,是不會有任何作用的,呼叫時寫幾次函式體的名字就呼叫幾次。

在指令碼內還有四種迴圈的控制語句

exit:終止整個指令碼

break:退出單個距離最近的迴圈體

continue:退出一次迴圈,不退出迴圈體

return:退出整個函式體

Linux基礎 shell指令碼(2)

實現shell指令碼 1 建立指令碼檔案 touch file.sh 2 實現指令碼 bin bash 表示所有的 都是通過bash解析 cmd3 指定執行許可權 chmod 755 file.sh 建立檔案 644 666 umask 建立目錄 755 777 umask umask 表示預設許可...

鏈結基礎 2 鏈結指令碼命令

將符號symbol的值設定成入口位址。ld有多種方法設定程序入口位址,按以下順序 編號越前,優先順序越高 1,ld命令列的 e選項 2,連線指令碼的entry symbol 命令 3,如果定義了start符號,使用start符號值 4,如果存在.text section,使用.text sectio...

Python指令碼 基礎指令碼訓練

目錄 python 基礎指令碼 1 random 隨機數模組,首先import random模組 1 random.random 生成 0.0,1.0 的隨機浮點數 2 random.randint x,y 生成 x,y 指定區間的隨機整數 3 random.unfiorm x,y 生成 x,y 之...