一、單選注釋
以“#”開頭的行就是注釋,會被解釋器忽略。
復(fù)制代碼 代碼如下:
#--------------------------------------------
# 這是一個(gè)自動(dòng)打ipa的腳本,基于webfrogs的ipa-build書寫:
# https://github.com/webfrogs/xcode_shell/blob/master/ipa-build
# 功能:自動(dòng)為etao ios app打包,產(chǎn)出物為14個(gè)渠道的ipa包
# 特色:全自動(dòng)打包,不需要輸入任何參數(shù)
#--------------------------------------------
##### 用戶配置區(qū) 開始 #####
#
#
# 項(xiàng)目根目錄,推薦將此腳本放在項(xiàng)目的根目錄,這里就不用改了
# 應(yīng)用名,確保和Xcode里Product下的target_name.app名字一致
#
##### 用戶配置區(qū) 結(jié)束 #####
二、多行注釋
如果在開發(fā)過程中,遇到大段的代碼需要臨時(shí)注釋起來,過一會兒又取消注釋,怎么辦呢?每一行加個(gè)#符號太費(fèi)力了,可以把這一段要注釋的代碼用一對花括號括起來,定義成一個(gè)函數(shù),沒有地方調(diào)用這個(gè)函數(shù),這塊代碼就不會執(zhí)行,達(dá)到了和注釋一樣的效果。例子:
復(fù)制代碼 代碼如下:
notExce(){
cp ./a.txt ./b.txt
mkdir -p {1,2,3}/{4,5,6}
echo "ok"
}
但如果我們需要對一大段的shell腳本進(jìn)行注釋,倘若我們都在每行前面添加#,這對我們來說,確實(shí)不是一件很令人舒服的事情,那么,在shell中,有沒辦法采用類似c語言的注釋/* ...*/來達(dá)到一整段的注釋效果呢?筆記經(jīng)過測試,發(fā)現(xiàn)下面的方法是ok的。
復(fù)制代碼 代碼如下:
:!EOF!
cp ./a.txt ./b.txt
mkdir -p {1,2,3}/{4,5,6}
echo "ok"
!EOF!
甚至可以把要注釋的shell整體變成一個(gè)函數(shù)來達(dá)到不讓執(zhí)行的目的。如例2。
把shell多行注釋掉,還有如下方法:
第一種:基于Here Documents和:實(shí)現(xiàn),和例3類似
如果被注釋的內(nèi)容中有反引號會報(bào)錯(cuò)
復(fù)制代碼 代碼如下:
:BLOCK
....被注釋的多行內(nèi)容
BLOCK
解決注釋中有反引號的問題
復(fù)制代碼 代碼如下:
: 'BLOCK
....被注釋的多行內(nèi)容
BLOCK'
或者干脆只留單引號
復(fù)制代碼 代碼如下:
: '
....被注釋的多行內(nèi)容
'
第二種:當(dāng)注釋內(nèi)容中有括號時(shí)報(bào)語法錯(cuò)誤錯(cuò),但里面有反引號,引號時(shí)沒有問題
復(fù)制代碼 代碼如下:
:||{
....被注釋的多行內(nèi)容
}
第三種:會對注釋內(nèi)容中的括號引號等語法錯(cuò)誤報(bào)錯(cuò)
復(fù)制代碼 代碼如下:
if false ; then
....被注釋的多行內(nèi)容
fi
您可能感興趣的文章:- Bash Shell 注釋多行的幾種方法
- PowerShell單行注釋、多行注釋、塊注釋的方法
- PowerShell中的特殊變量$null介紹和創(chuàng)建多行注釋小技巧
- shell中如何批量注釋和取消注釋