您好,登錄后才能下訂單哦!
這篇文章主要講解了“shell函數與數組的詳細介紹”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“shell函數與數組的詳細介紹”吧!
1.將命令序列按格式寫在一起
2.可放便重復使用命令序列
3.Shell函數定義(用return或exit可以顯示的結束函數)
[function] 函數名(){ 命令序列 [return x] }
4.調用函數的方法
函數名 [參數1][參數2]
Shell函數應用演示
兩個數字求和
1.通過sum(){}定義函數
2.使用read命令交互輸入兩個數并求和
[root@localhost ~]# vim demo02.sh #!/bin/bash sum(){ read -p "請輸入第一個數: " num1 read -p "請輸入第二個數: " num2 echo "你輸入的數字為: $num1 和 $num2" SUM=$((num1+$num2)) echo "兩個數的和為: $SUM" } sum [root@localhost ~]# sh demo02.sh 請輸入第一個數: 2 請輸入第二個數: 6 你輸入的數字為: 2 和 6 兩個數的和為: 8
Shell自定義函數演示
系統版本識別并調用函數啟動相應服務
#!/bin/bash #自定義函數 service_index(){ echo "servicectl <servername> <start|stop|status|relod|restart>" return 1 } service_version(){ grep "CentOS.* 7." /etc/centos-release > /dev/null && echo "centos7" grep "CentOS.* 6." /etc/centos-release > /dev/null && echo "centos6" grep "CentOS.* 5." /etc/centos-release > /dev/null && echo "centos5" } #調用前兩個函數 servicectl(){ [[ -z $1 || -z $2 ]] && service_index [ $(service_version) = "centos7" ] && systemctl $2 ${1}.service || service $1 $2 }
驗證腳本
應用場景包括
1.獲取數組長度
2.獲取元素長度
3.遍歷元素
4.元素切片
5.元素替換
6.元素刪除
......
數組定義方法
方法一
數組名= (value0 value1 value2 ...)
方法二
數組名= ([0]=value [1]=value [2]=value...)
方法三
列表名=“vlaue0 vlaue1 vlaue2 ..” 數組名= ($列表名)
方法四
數組名[0]=“value” 數組名[1]=“value” 數組名[2]=“value” ......
數組包括的數據類型
1.數值類型
2.字符類型
使用“”或‘’定義
Shell數組操作
1.獲取數組長度
$#{數組名[@/*]} (@或者*)
2.讀取某下標賦值
${數組名[下標]}
3.數組遍歷
[root@localhost ~]# vim demo01.sh #!/bin/bash num=(11 22 33 44 55 ) for ((i=0;i<${#num[*]};i++)) do let num[i]++ echo ${num[i]} done [root@localhost ~]# source demo01.sh 12 23 34 45 56
1.echo命令
2.bash命令
語法
sh [-nvx] 腳本名
常用選項
-n:不執行腳本,僅檢查語法。沒有語法問題不顯示任何內容,有問題提示報錯。
-v:執行腳本時,先顯示腳本內容,然后執行腳本。存在錯誤時,給出成為提示。
-x:將執行的腳本內容輸出到屏幕上。
3.set命令
set -x:開啟調節模式
set +x:關閉調節模式
感謝各位的閱讀,以上就是“shell函數與數組的詳細介紹”的內容了,經過本文的學習后,相信大家對shell函數與數組的詳細介紹這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。