Shell指令碼介紹與使用
Shell介紹
Shell 和python都是弱語言
定義變數規則 : 變數名=值
shell定義變數的規則:
-
等號兩邊不能有空格
-
定義特殊的變數需要用單引號或者雙引號結合
-
定義linux命令需要用反單引號
區分單引號和雙引號的不同和相同點
Shell取值
使用:echo $變數名
Shell指令碼的規則
1: 指令碼名稱使用.sh結尾
2:第一行必須寫# !/bin/bash
3:輸入語句用read
4:輸出語句用:echo
5: 呼叫的時候
/指令碼名.sh(許可權的問題)
sh 指令碼名.sh
注意點:read可以傳遞多個資料 read –p”name and passwoed”name password
超過的部分都填充在最後一個變數上
引數傳遞 :向.sh檔案中傳遞資料
格式: sh 指令碼名.sh 引數
$ 1 接收第一個引數~~$n
$n:檔名稱
$@:所有引數
$#:引數個數
比較運算子
比較運算子(數字)
-eq 比較是否相等
-ne 比較不相等
-gt 比較大於
-ge 比較大於等於
-lt 比較小於
-le 小於等於
字串判斷:== ,!=
邏輯運算子 -a與 -o或 !非
((i++)) ((i+=1))
s=
(
(
((
((s+
i
)
)
s
=
i)) s=
i))s=[
s
+
s+
s+i] ((s=
s
+
s+
s+i))
If語句(分支結構)
if [ 條件 ]
then
語句
elif [ 條件 ]
then
語句
…
else
語句
fi
Case迴圈語句
case規則
case $變數名 in
“值”)
語句;;
“值”)
語句;;
…
esac
注意:
1:case這第一行以in結尾
2:值可以是字串也可以是數字, 如果數字範圍[0-9]
3:結束語句
4:esac結束標誌
For迴圈
for 變數 in 列表
do
語句
done
試想列表中的元素過多的時候,需要怎麼做?
seq mix step max 注意:mix 開始資料 step:間隔 max 結束資料,如果step為1,可以省略
注意1: 結束標誌done
While迴圈
while [ 條件 ]
do
語句
done
注意:結束done
While後有空格, 引數之間也
注意
函式
定義格式
函式名(){程式碼 }
呼叫格式
函式名
注意點:必須先定義一個函式,然後再呼叫它
引數傳遞
函式中的引數
使用$n來接收資料
練習:輸入任意兩個整數進行求和運算,並打
印結果
返回值
Shell中函式中預設存在返回值
檢視函式的返回值$?
注意點:
如果沒有程式碼錯誤預設返回值為0,
有程式碼錯誤返回1
檢視返回值內容:$?
相關文章
- MySQL使用XtraBackup的shell指令碼介紹MySql指令碼
- 陣列-在Shell指令碼中的基本使用介紹陣列指令碼
- Linux shell 指令碼基礎介紹Linux指令碼
- 簡單介紹Shell指令碼之檔案批次建立與修改的方法指令碼
- (1) Shell 指令碼簡介指令碼
- Oracle管理指令碼介紹Oracle指令碼
- CSS3無字首指令碼prefixfree.js與Animatable使用介紹CSSS3指令碼JS
- MongoDB shell 介紹MongoDB
- hive streaming 使用shell指令碼Hive指令碼
- 使用shell定製awr指令碼指令碼
- Shell指令碼中cd命令使用指令碼
- 3個例項介紹shell指令碼中幾個特殊引數的用法指令碼
- Linux Bash Shell 指令碼入門(3)——Linux常用命令介紹Linux指令碼
- Shell程式設計 --- Shell介紹程式設計
- catalog.sql指令碼介紹SQL指令碼
- 使用批處理指令碼或SHELL配合SQL指令碼指令碼SQL
- 『忘了再學』Shell基礎 — 3、echo命令的介紹與使用
- shell指令碼指令碼
- 面向 DBA 的 Linux Shell 指令碼簡介Linux指令碼
- 【Shell】使用Shell指令碼快速完成SQL指令碼中重複枯燥的任務指令碼SQL
- 輕鬆使用“Explain Shell”指令碼來理解 Shell 命令AI指令碼
- Shell echo命令介紹
- Shell 陣列介紹陣列
- shell 語法介紹
- HBase shell 命令介紹
- 如何使用zx編寫shell指令碼指令碼
- 使用shell 指令碼備份資料指令碼
- Centos下使用php呼叫shell指令碼CentOSPHP指令碼
- shell指令碼批量操作使用者指令碼
- 使用shell定製addm指令碼指令碼
- shell oracle 建立使用者指令碼Oracle指令碼
- [Shell] Shell 生成 HTML指令碼HTML指令碼
- meterpreter常見指令碼介紹指令碼
- javascript指令碼非同步載入介紹JavaScript指令碼非同步
- TCL指令碼語言基礎介紹指令碼
- shell指令碼:$(())與$()還有${}的區別指令碼
- 快速入門Redis呼叫Lua指令碼及使用場景介紹Redis指令碼
- Quick-Task 動態指令碼支援框架之使用介紹篇UI指令碼框架