溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Bash Shell怎么同時(shí)注釋多行代碼

發(fā)布時(shí)間:2021-07-30 15:30:40 來源:億速云 閱讀:211 作者:chen 欄目:開發(fā)技術(shù)

本篇內(nèi)容主要講解“Bash Shell怎么同時(shí)注釋多行代碼”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Bash Shell怎么同時(shí)注釋多行代碼”吧!

1、最簡單方法

代碼如下:


:<<BLOCK
....注釋內(nèi)容
BLOCK

把輸入重定義到前面的命令,但是 : 是空命令,所以就相當(dāng)于注釋了。
如果注釋中有反引號(hào)的命令就會(huì)報(bào)錯(cuò),反引號(hào)部分不會(huì)被注釋掉,例如 var=`ls -l` 就不會(huì)被注釋掉。

2、解決注釋中有反引號(hào)的問題

A、方法一

代碼如下:


:<<BLOCK'
....注釋內(nèi)容
'BLOCK

B、方法二

代碼如下:


:<<'BLOCK
....注釋內(nèi)容
BLOCK'

C、方法三

代碼如下:


:<<'
....注釋內(nèi)容
'

BLOCK 為 Here Documents 中的定義符號(hào),名稱任意,只要前后匹配就行。

3、: 指令和 Here Documents
: 就是什么也不做(do nothing)即空命令,一般用在 if...then... 條件中,用作什么也不做的命令,如:

代碼如下:


if [ -d $DIRECTORY ]; then
    :
else
    echo 'the directory do not exit !'
fi

下面的例子:

代碼如下:


cmd<<WORD
any input
file content
WORD

是 Here Documents 的用法,意思是將以上的定義符WORD傳給某腳本或命令。
WORD的內(nèi)容為兩個(gè)WORD間輸入任意內(nèi)容,這樣就可以在腳本中用 cmd 來執(zhí)行輸入而不必再重建一文件。

Here Documents 常用在菜單屏幕中,例如:

代碼如下:


cat <<Menu
1.List
2.Help
3.Exit
Menu

至于

代碼如下:


:<<WORD
....注釋內(nèi)容
WORD

就類似于建一本地文件,然后對(duì)它執(zhí)行空命令,什么也不做,亦即是相當(dāng)于注釋了。

補(bǔ)充:

代碼如下:

代碼如下:


for ((i=0; i<10; i++))
do
:<<_a_   
    if [  ]; then
        ...
    fi
_a_
    echo ""
done

上面的 :<<_a_ 和 _a_ 代表段注釋,可以把中間的代碼注釋掉
 
_a_ 為 Here Documents 中的定義符號(hào),名稱任意,只要前后匹配就行
 
: 為空命令,相當(dāng)于什么都不做(do nothing)即空命令,一般用在 if...then... 條件中,用作什么也不做的命令,如:

代碼如下:


if [ -d $DIRECTORY ]; then
    :
else
    echo 'the directory do not exit !'
fi


 
如果注釋中有反引號(hào)的命令就會(huì)報(bào)錯(cuò),反引號(hào)部分不會(huì)被注釋掉,例如 var=`ls -l` 就不會(huì)被注釋掉。
 
    解決注釋中有反引號(hào)的問題

代碼如下:


:<<_a_'
....注釋內(nèi)容
'_a_

單行的就不說了,井號(hào)#可以搞定.下面說多行的.

一. 通過Here Documents實(shí)現(xiàn):

1)
:<<EOF
注釋的代碼...
EOF
冒號(hào):表示什么都不做.
說明: 這種方法當(dāng)注釋代碼里出現(xiàn)變量引用或者是反引號(hào)時(shí),bash會(huì)去嘗試解析他們,會(huì)提示錯(cuò)誤信息. 解決方法有下面幾種:

1.

代碼如下:


:<<\EOF
注釋的代碼...
EOF

2.

代碼如下:


:<<'EOF'
注釋的代碼...
EOF


3.

代碼如下:


:<<'EOF
注釋的代碼...
EOF'


4.

代碼如下:


:<<EOF'
注釋的代碼...
'EOF

5.

代碼如下:


:<<'
注釋的代碼...
'

到此,相信大家對(duì)“Bash Shell怎么同時(shí)注釋多行代碼”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI