linux基础(6)-shell编程
生活随笔
收集整理的這篇文章主要介紹了
linux基础(6)-shell编程
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
shell腳本
shell腳本程序:以文件形式存放批量的linux命令集合,該文件能夠被shell釋放執行。通常由一段linux命令、shell命令、控制語句以及注釋語句構成。 shell腳本特點:- 第一行需指定用哪個程序來編譯和執行腳本,如#!/bin/bash 或者#!/bin/sh
- 通常shell腳本以.sh為后綴
- 有執行權限,可以./filename.sh
- 無執行權限,可以sh filename.sh
?
變量與引用 定義變量- 定義變量時變量名不加美元符號
- 注意等號兩邊不能有空格如:name="wujiadong"
- 變量名不能以數字開頭
- export命令可以使變量用于子進程
- 變量賦值時,若值中有空格,必須使用雙引號括起來
- 使用一個定義過的變量,只要在變量名前加美元符號。
- 顯示變量:echo $name 或echo ${name}
- 清除變量:unset name
實例1
test11.sh
1 #!/bin/bash 2 v1="feigu" 3 export v2="wujiadong" #export命令可以使變量用于子進程 4 5 echo "顯示v1:$v1" 6 echo "顯示v2:$v2" 7 8 sh test12.shtest12.sh
1 #!/bin/sh 2 echo "引用變量v1:$v1" 3 echo "引用變量v2:$v2"執行sh.test11.sh
?
控制結構 判斷 test -e filename 表示是否存在 -e 是否存在? -f 是否存在且為檔案(file) -d 是否存在且為目錄(directory) ? -r 是否存在且有可讀權限 -w 是否存在且有可寫權限 -x 是否存在且有可執行權限 ? 兩個數之間判斷 :test n1 -eq n2 -eq 兩數值相等(equal) -ne 兩數值不等(not equal) -gt n1大于n2(greater than) -lt n1小于n2(less than) -ge n1大于等于n2(great than or equal) -le?n1小于n2(less than or equal) ?判斷字符串的數據
test -z string 判斷字符串是否為0,string為空字符串,則為true test -n string 判斷字符串是否非為0,string為空字符串,則為false。注:-n可省略 test str1 = str2 判斷str1是否等于str2,若相等,則回傳true test str1 != str2 ?判斷str1是否不等于str2,若相等,則回傳false?
if else
if 條件 then 命令 fi或者if 條件 then 命令1 else 命令2 fi或者if 條件1then 命令1 elif 條件2then 命令2 else 命令3 fi注意:這里elif是else if的縮寫,但不支持else if的寫法
?
?
轉載于:https://www.cnblogs.com/wujiadong2014/p/5712550.html
總結
以上是生活随笔為你收集整理的linux基础(6)-shell编程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux基础(2)-网卡配置
- 下一篇: Docker学习总结(6)——通过 Do