Shell腳本注釋的實(shí)現(xiàn)
單行注釋
直接在行最前端加上符號(hào) # 即可。具體用法如下所示:
# this is comment test echo "this is comment test"
多行注釋/段注釋
一、空命令 : 和追加輸入重定向 <<
:<<BLOCK ....注釋內(nèi)容 BLOCK
說明:
- 把輸入重定義(<<)到前面的命令,但是 : 是空命令,所以就相當(dāng)于注釋了。
- 這種方法當(dāng)注釋代碼里出現(xiàn)變量引用或者是反引號(hào)的命令時(shí),shell 會(huì)去嘗試解析,會(huì)提示錯(cuò)誤信息,反引號(hào)部分不會(huì)被注釋掉。
例如:
var=`ls -l` # 這個(gè)就不會(huì)被注釋掉,因?yàn)橛蟹匆?hào)
BLOCK 為 Here Documents 中的定義符號(hào),名稱任意,只要前后匹配就行,如下兩個(gè)例子中分別使用 WORD 和 _a_ 也可以:
例(1):
:<<WORD ....注釋內(nèi)容 WORD?
例(2):
下面的 :<<_a_ 和 _a_ 代表段注釋,可以把中間的代碼注釋掉,_a_ 為 Here Documents 中的定義符號(hào),名稱任意,只要前后匹配就行。
for ((i=0; i<10; i++)) do :<<_a_ ? ? ? ? if [ ?]; then? ? ? ? ? ... ? ? fi _a_ ? ? echo "" done
常用來作為注釋的成對(duì)字符有:
EOF、_a_、WORD、BLOCK、!
備注:
- EOF 截止符用作后續(xù)輸入命令
- ! 嘆號(hào)一般作為嵌入內(nèi)容部分
- ' 單引號(hào)一般用來區(qū)分內(nèi)容
解決注釋中有反引號(hào)的問題
方法一
:<<BLOCK' ....注釋內(nèi)容 'BLOCK
方法二
:<<'BLOCK ....注釋內(nèi)容 BLOCK'
方法三
:<<' ....注釋內(nèi)容 '
方法四
:<<\EOF 注釋的代碼... EOF
方法五
:<<'EOF' 注釋的代碼... EOF
二、空命令 : 和 if…then… 語(yǔ)句
: 就是什么也不做(do nothing)即空命令,一般用在 if…then… 條件中,用作什么也不做的命令,如下:
if [ -d $DIRECTORY ]; then ? ? : else ? ? echo 'the directory do not exit !' fi
擴(kuò)展知識(shí):
下面的例(1)是 Here Documents 的用法,意思是將定義符 WORD 傳給某腳本或命令。WORD 的內(nèi)容為兩個(gè) WORD 間輸入任意內(nèi)容,這樣就可以在腳本中用 cmd 來執(zhí)行輸入而不必再重建一文件。
例(1):
cmd<<WORD any input file content WORD
Here Documents 常用在菜單屏幕中,看例(2):
例(2):
cat <<Menu 1.List 2.Help 3.Exit Menu
三、空命令 : 和單引號(hào) ’
注意:?jiǎn)我?hào) ' 和冒號(hào) : 之間要加空格。
# echo is test echo "test" echo "test" echo "test" echo "test" echo "test" ? : ' echo "comment" echo "comment" echo "comment" echo "comment" echo "comment" echo "comment" '
到此這篇關(guān)于Shell腳本注釋的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Shell腳本注釋內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
shell正則表達(dá)式、grep命令和sed命令舉例詳解
正則表達(dá)式就是用于描述這些規(guī)則的工具,換句話說正則表達(dá)式就是記錄文本規(guī)則的代碼,這篇文章主要給大家介紹了關(guān)于shell正則表達(dá)式、grep命令和sed命令的相關(guān)資料,需要的朋友可以參考下2024-02-02Shell腳本自動(dòng)部署項(xiàng)目的方法步驟
本文主要介紹了Shell腳本自動(dòng)部署項(xiàng)目的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03Linux下is not in the sudoers file的解決
當(dāng)我們使用sudo命令切換用戶的時(shí)候可能會(huì)遇到提示以下錯(cuò)誤:用戶名 is not in the sudoers file.本文給大家分享原因分析及解決方案,感興趣的朋友跟隨小編一起看看吧2023-02-02shell基礎(chǔ)學(xué)習(xí)中的字符串操作、for循環(huán)語(yǔ)句示例
這篇文章主要介紹了shell基礎(chǔ)學(xué)習(xí)中的字符串操作、for循環(huán)語(yǔ)句示例2014-04-04shell腳本echo輸出不換行功能增強(qiáng)實(shí)例
這個(gè)腳本很簡(jiǎn)單,就是可以用3種不同的函數(shù)(方法)來實(shí)現(xiàn),輸出后不換行2016-08-08