bash 指令碼中分號的作用

2022-07-09 15:09:13 字數 962 閱讀 6891

在linux bash shell中,語句中的分號一般用作**塊標識

1、單行語句一般要用到分號來區分**塊。比如:

weblogic@pmtest:/$if [ "$ps1" ]; then echo test is ok; fi

test is ok

該指令碼或命令列中,須要兩個分號才為正確的語句,第乙個分號是then 前的分號,用於標識條件塊結束。第二個分號在fi前,用於標識then塊結束,假設缺少這兩個分號,則程式執行錯誤。

這裡有趣的是echo後的字串不須要使用引號也能正確地被識別。

注意:語句結尾不要分號。

2、該**若寫作多行。用換行符來區分**塊,則無需用到分號,比如:

weblogic@pmtest:/$if [ "ps1" ]

> then echo "test is ok"

> fi

test is ok

從這個樣例可看出 if推斷語句分if塊,then塊,fi結束標識。

當然還有可能有elesif塊,比如:

weblogic@pmtest:/$if [ "$ps1" ]

> then echo test is ok

> elif [ "$ps2" ]

> then echo here

> fi

test is ok

注意:這裡要使用elif。而不使用esle if,若使用else if,則為不完整語句,如以下的樣例不能被正確執行:

weblogic@pmtest:/$if [ "$ps1" ]

> then echo test is ok

> else if [ "$ps2" ]

> then echo here

> else

> echo ""

> fi

>

敲回車後。shell程式覺得句子沒有完畢。繼續等待輸入。

Java中「分號」引起的陷阱

對於這類問題而言,難度不大,多半是由於我們有誤操作引起的。但在查詢問題所在的時候我們有可能需要花費一番功夫了。例項一 package com.yonyou.test 測試類 author 小浩 建立日期 2015 3 2 public class test 咋一看竟然輸出了 0大於9 這是什麼情況?...

Oracle中分號提示無效字元的問題

我們平時在寫sql語句時,一般都會在結尾加上分號來執行,但在某些情況下可能會導致invalid character的問題 首先檢查sql語句中是否有中文字元的問題,確保自己寫的sql語句正確 在oracle中,分號 和 都是執行的含義,如果使用了 就不需要使用分號了 注 如果是執行儲存過程則必須使用...

Shell指令碼中的分號使用

在linux中,語句中的分號一般用作 塊標識 1 單行語句一般要用到分號來區分 塊,例如 if ps1 then echo test is ok fi test is ok 該指令碼或命令列中,需要兩個分號才為正確的語句,第乙個分號是then前的分號,用於標識條件塊結束,第二個分號在fi前,用於標識...