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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

逻辑判断-if语句/文件目录属性判断/case判断

發布時間:2025/3/20 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 逻辑判断-if语句/文件目录属性判断/case判断 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

邏輯判斷IF

-gt :大于
-lt :小于
-eq :等于
-ne :不等于
-ge :大于或等于
-le :小于或等于

格式1:

if 條件 ;then 語句; fi

a=5 if [ $a -gt 3 ]; then echo ok; fi; //一行表示出來,注意條件中間都要有空格,有空格;分號用來隔開;

或者

a=5 if [ $a -gt 3 ] thenecho ok fi 意思:定義a=5,判斷a大于3的時候,就輸出ok;

格式2:

if 條件 ;then 語句1 ; else 語句2;fi
語句1為滿足條件的語句,語句2為不滿足條件的語句;

a=1 if [ $a -gt 3 ];then echo ok;else echo nook;fi; 輸出:nook

或者

#!/bin/bash a=1 if [ $a -gt 3 ] thenecho ok elseecho nook fi

格式3:

if 條件1;then 語句1;elif 條件2;then 語句2;else 語句3;fi
當條件1不滿足時,就行條件2判斷,條件2不滿足就執行語句3;

#!/bin/bash a=2 if [ $a -lt 1 ];then echo "a<1";elif [ $a -lt 3 ];then echo "a<3 && a>1";else echo "a>3";fi;輸出:a<3 && a>1 這語句意思是:判斷a小于1,就輸出a<1;如果a大于1,就進行第二個判斷a小于3,如果大于1,小于3,就輸出a<3 && a>1;兩個條件都不滿足就輸出a>3

#!/bin/bash a=2 if [ $a -lt 1 ] thenecho "a<1" elif [ $a -lt 3 ] thenecho "a>1 && a<3" elseecho "a>3" fi

變量與變量判斷:

判斷變量a與b哪個比較大

a=1 b=2 if [ $a -lt $b ];then echo "a<b";else echo "a>b";fi; 輸出:a<b

多條件判斷:

&&:表示and,并且
|| :表示or,或者

a=1 b=2 if [ $a -lt 5 ] && [ $b -lt 5 ];then echo "a<5 && b<5";fi; 輸出:a<5 && b<5

文件目錄屬性判斷

[ -f file ]:判斷是否是普通文件,且存在
[ -d file ]:判斷是否是目錄文件夾,且存在
[ -e file ]:判斷文件或目錄是否存在
[ -r file ]:判斷文件是否可讀,判斷r
[ -w file ]:判斷文件是否可寫,判斷w
[ -x file ]:判斷文件是否可執行,判斷x

#!/bin/bash #判斷是否存在/tmp/abclinux文件&&是否是普通文件 f="/tmp/abclinux" if [ -f $f ] thenecho $f exist elsetouch $f fi #!/bin/bash #判斷f是否是目錄&&存在;不是目錄&&不存在就創建,是目錄&&存在就提示存在,存在&&不是目錄就會告錯 f="/tmp/abc111linux" if [ -d $f ] thenecho $f exist elsemkdir $f fi #!/bin/bash #判斷這個文件或者目錄是否存在 f="/tmp/abclinux" if [ -e $f ] thenecho $f is yes elseecho $f is no fi #!/bin/bash 判斷f是否是普通文件&&存在,如果存在&&是普通文件,就輸出掉它; f="/tmp/abclinux" [ -f /tmp/abclinux ] && rm -f $f

特殊用法

if [ -z "$a" ]:判斷變量a的值為空會怎么樣;
if [ -n "$a" ]:當變量a的值不為空會怎么樣;
if grep -q '123' 1.txt:表示1.txt中含有123會這么樣;
if [ ! -e file ]:表示文件不存在會怎么樣;
if (($a<1)):等同于if [ $a -lt 1]這個判斷,[]方括號中不能使用<,>,==,!=,>=,<=這些符號;


case判斷

格式:

case 變量名 in值1)語句1;;值2)語句2;;*)語句N;; esac 注意:最后一個值為*,表示不匹配上面所有的值,就執行語句N;

舉例:

#!/bin/bash read -p "Please input a number:" n #請輸入一個數字,賦予變量n if [ -z "$n" ] thenecho "please input a number."exit 1 fi #判斷輸入的值是否為空n1=`echo $n|sed 's/[0-9]//g'` if [ -n "$n1" ] thenecho "please inputa number."exit 1 fi #判斷輸入的是否為數字if [ $n -lt 60 ] && [ $n -ge 0 ] thentag=1 elif [ $n -ge 60 ] && [ $n -lt 80 ] thentag=2 elif [ $n -ge 80 ] && [ $n -lt 90 ] thentag=3 elif [ $n -ge 90 ] && [ $n -le 100 ] thentag=4 elsetag=0 fi #判斷分數,賦予tag檔次,0為其他,1為不及格,2為及格,3為良好,4為優秀case $tag in1)echo "not ok,bu-ji-ge";;2)echo "ok,ji-ge";;3)echo "ook,liang-hao";;4)echo "oook,you-xiu";;*)echo "the number range is 0-100";; esac #esac判斷并輸出結果

轉載于:https://blog.51cto.com/shuzonglu/2105164

總結

以上是生活随笔為你收集整理的逻辑判断-if语句/文件目录属性判断/case判断的全部內容,希望文章能夠幫你解決所遇到的問題。

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