在指令碼內#!/bin/bash
read -p "
請輸入乙個數字
"num
if [ $num -eq 60 ];then
echo
"猜對了
"else
echo
"猜錯了
"fi
這是乙個完整的但分值if條件語句,兩個動作必定執行乙個。if如果,then那麼,else否則,fi結尾。
在指令碼內
#!/bin/bashread -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 iwhile [ $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 之...