日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux之Shell脚本的条件判断和函数

發(fā)布時間:2025/3/20 linux 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux之Shell脚本的条件判断和函数 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一、條件判斷

1.if判斷

(1)基本語法

if [ 條件判斷式 ] then程序 fi

注意事項:

1.[ 條件判斷式 ]中括號和條件判斷式之間必須有空格

2.if后要有空格

(2)實操

輸入一個數字,如果是1,則輸出java,如果是2,則輸出python,如果是其它,則輸出linux

#!/bin/bash ? if [ $1 -eq 1 ] thenecho "java" elif [ $1 -eq 2 ] thenecho "python" elseecho "linux" fi

2.case語句

(1)基本語法

case $變量名 in"值1")程序1;;"值2")程序2;;*)程序3;;esac

注意事項:

1.case行尾必須為單詞"in",每一個模式匹配都必須以右括號")"結束

2.雙分號";;"表示命令序列結束,相當于java的break

3.最后的" *) "表示默認模式,相當于java的default

(2)實操

輸入一個數字,如果是1,則輸出java,如果是2,則輸出linux,如果是其它,則輸出C++

#!/bin/bash ? case $1 in 1)echo "java" ;; 2)echo "linux" ;; *)echo "C++" ;; esac

3.for循環(huán)

(1)基本語法1

for((初始值;循環(huán)控制條件;變量變化)) do程序 done

(2)實操1

從1加到100

#!/bin/bash ? s=0; for((i=1;i<=100;i++)) dos=$[$s+$i] done ? echo $s

(3)基本語法2

for 變量 in 值1 值2 值3... do程序 done

(4)實操2

#!/bin/bash ? for i in $* doecho "parameter: ${i}" done

4.while循環(huán)

(1)基本語法

while [ 條件判斷式 ] do程序 done

(2)案例

輸出一個數字,從1加到100

#!/bin/bash ? s=0; i=1; while [ $i -le 100 ] dos=$[$s+$i];i=$[$i+1]; done ? echo $s

二、read讀取控制臺輸入

1.基本語法

read(選項)(參數) 選項:-p:指定讀取值時的提示符-t:指定讀取值時等待的時間(秒) 參數:變量:指定讀取值的變量名

2.實操

提示7秒內,讀取控制臺輸入的名稱

#!/bin/bash ? read -t 7 -p "please input your name in 7 seconds: " NAME ? echo $NAME

三、函數

1.系統(tǒng)函數

(1)basename基本語法

basename命令會刪掉所有的前綴包括最后一個'/'字符,然后將字符串顯示出來

basename [string/pathname] [suffix]

(2)實操

截取/home/depo/shell/read.sh路徑的文件名稱

[depo@dev shell]$ basename /home/depo/shell/read.sh read.sh

(3)dirname基本語法

從給定的包含絕對路徑的文件名中去除文件名,然后返回剩下的路徑

dirname 文件絕對路徑

(4)實操

獲取read.sh文件的路徑

[depo@dev shell]$ dirname /home/depo/shell/read.sh /home/depo/shell

2.自定義函數

(1)基本語法

[ function ] funname[()] {Action;[return int;] } ? funname

注意:

1.必須在調用函數地方之前,先聲明函數,shell腳本是逐行運行。不會像其它語言一樣一樣先編譯

2.函數返回值,只能通過$?系統(tǒng)變量獲得,可以顯示加return返回,如果不加,將以最后一條命令運行結果,作為返回值。return后跟數組(0-255)

(2)實操

計算兩個輸入參數的和

#!/bin/bash ? function sum() {s=0;s=$[$1+$2];echo $s } ? read -p "input your parameter1: " p1 read -p "input your parameter2: " p2 ? sum $p1 $p2

?

《新程序員》:云原生和全面數字化實踐50位技術專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的Linux之Shell脚本的条件判断和函数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。