if語句解析

2021-07-31 21:04:34 字數 1919 閱讀 7857

if 語句格式

if 條件

then

command

else

command

fi 別忘了這個結尾

if語句忘了結尾fi

test.sh: line 14: syntax error: unexpected end of fi if 的三種條件表示式

ifcommand

then if

函式then

命令執行成功,等於返回0 (比如grep ,找到匹配)

執行失敗,返回非0 (grep,沒找到匹配)

if [ expression_r_r_r ]

then 表示式結果為真,則返回0,if把0值引向then

if test expression_r_r_r

then 表示式結果為假,則返回非0,if把非0值引向then

[ ] && ——快捷if

[ -f "/etc/shadow" ] && echo "this computer uses shadow passwors"

&& 可以理解為then

如果左邊的表示式為真則執行右邊的語句 shell的if與c語言if的功能上的區別

shell if c語言if

0為真,走then 正好相反,非0走then

不支援整數變數直接if

必須:if [ i –ne 0 ] 但支援字串變數直接if

if [ str ] 如果字串非0

支援變數直接if

if (i )

一,if語句

1.if與[之間要有空格

2.與判斷條件之間也必須有空格

3.]與;之間不能有空格

二,字串 判斷

1.if [ str1=str2 ];then fi  ----當兩個字串相同時返回真

2.if [ str1!=str2 ];then fi ----當兩個字串不相等時返回真

3.if [ -n str1 ];then fi    ----當字串的長度大於0時返回真 (判斷變數是否有值)

4.if [ -z str1 ];then fi    ----當字串的長度為0時返回真

三,數字 判斷

1.int1 -eq int2    --相等

2.int1 -ne int2    --不相等

3.int1 -gt int2    --大於

4.int1 -ge int2    --大於等於

5.int1 -lt int2    --小於

6.int1 -le int2    --小於等於

四,檔案 判斷

1. -r file        --使用者可讀為真

2. -w file        --使用者可寫為真

3. -x file        --使用者可執行為真

4. -f file        --檔案存在且為正規檔案為真

5. -d file        --如果是存在目錄為真

6. -c file        --檔案存在且為字元裝置檔案

7. -b file        --檔案存在且為塊裝置檔案

8. -s file        --檔案大小為非0為真,可以判斷檔案是否為空

9. -e file        --如果檔案存在為真

五,邏輯判斷

1. -a     --與

2. -o     --或

3. !      --非

附,case用法

case $var in

表示式1)

若干語句...

;;表示式2)

若干語句...

;;*)

若干語句

;;esac

六.算數運算

1.取餘數$(($i%100))

$表示數**算$[$i%100]

mysql語句解析 Mysql join語句解析

標籤 1.右連線 right join,right outer join 解釋 以右表 sys employee 為準,而左表 sys department 中的記錄只有當其departmentid在右表中存在時才會查詢出來 2.左連線 left join,left outer join 解釋 以左...

shell if 條件語句解析

1.判斷檔案是不是存在 shell判斷檔案,目錄是否存在或者具有許可權 這裡的 x 引數判斷 mypath是否存在並且是否具有可執行許可權 if x mypath then mkdir mypath fi 這裡的 d 引數判斷 mypath是否存在 if d mypath then mkdir my...

oracle 分頁語句解析

oracle的分頁查詢語句基本上可以按照本文給出的格式來進行套用。分頁查詢格式 select from select a.rownum rn from select from table name a where rownum 40 where rn 21 其中最內層的查詢select from t...