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

歡迎訪問 生活随笔!

生活随笔

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

linux

linux 中的if else语句

發布時間:2025/3/21 linux 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux 中的if else语句 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

linux 中的if ?else語句

在shell中。if語句有三種形式,如下:

第一種:

if ?condition

then

? ?command

else?

? ?command

在這種形式中,其中和c語言不同到是,condition實際上是一個語句列表,而不是一般的布爾表達式(也就是,最后到判斷是以condition退出的狀態為判斷依據,0表示真,非0表示假,這和c語言中恰好相反)。

在shell中命令或者函數在退出時都會返回一個小小的整數給調用他的程序,這是命令的退出狀態。

參考:http://blog.csdn.net/lyhdream/article/details/8875164

一下看一個例子:


以上例子中:head -1 /etc/passwd 的返回狀態為0,表示真

? ? ? ? ? ? ? ? ? ? ? ? ?head -1 /etc/shadow ?的返回狀態為1,表示假

我們新建一個文件judge.sh,寫入以下代碼:

judge(){
if head -1 /etc/passwd?
then
echo 'true'
else
echo 'false'
fi
}
judge

執行結果:


可以看到打印出true,

將以上函數的if head -1 /etc/passwd 改為if ?head -1 /etc/shadow?

執行結果:


第二種:

大多數情況下,可以使用測試命令(test)來對條件進行測試。比如可以比較字符串、判斷文件是否存在及是否可讀等等,test命令也可以[ ]來代替,這是他的另一種形式。

例如 :if ?test ?2>3 ?等價于 ?if ?[ 2>3 ](注意[ ]的開始和結束都有空格,打于符號2和3之間沒有空格)

將以上函數改為:

judge(){
if test ? "aaa" = "bbb"
then
echo 'true'
else
echo 'false'
fi
}
judge

執行結果:


第三種(即使通與test的另一種形式):

if test ? "aaa" = "bbb" 改為 ?if [ "aaa" = "bbb"]

執行結果:


注意:if ?test ?2>3 ?與 if ?test ?2 > 3 是有 區別的,注意比較符號之間的空格

? ? ? ? ? ? if [ 2>3 ] ?與 [ 2 > 3 ] ?也是有區別的,同上






總結

以上是生活随笔為你收集整理的linux 中的if else语句的全部內容,希望文章能夠幫你解決所遇到的問題。

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