如何對(duì)shell腳本進(jìn)行批量注釋?
1.Bash中單行注釋
這個(gè)單行注釋就很簡(jiǎn)單,就是以#號(hào)開頭的行就是注釋,注意第一行除外(比較特殊)
2. Bash中多行注釋
Bash Shell中沒有多行注釋的直接用法,但是有很多用老男孩思想就可以實(shí)現(xiàn)的方法,最簡(jiǎn)單的方法就是在多行前面加#號(hào)就可以了,哈哈,vim有功能支持給多行前面批量加#號(hào),見書籍第16章vim的使用講解,這里就不細(xì)說了。
法1:在要注釋的多行前增加#號(hào)
[root@web01 ~]# cat oldboy.sh
#!/bin/bash
#echo "I am oldboy"
#echo "I am oldboy"
#echo "I am oldboy"
echo "I am oldboy"
[root@web01 ~]# sh oldboy.sh
I am oldboy
法2:使用冒號(hào)配合追加輸入重定向-----推薦使用此方法
這個(gè)方法,網(wǎng)上也有人講,但是無一例外,沒有一個(gè)給出原理來,看來太多人都不知其所以然啊,老男孩的讀者們還是很迷糊,看來只好老男孩為大家解釋了。
其實(shí)冒號(hào)在Bash里也是一個(gè)命令,表示啥都不做,<<是輸入重定向,兩個(gè)EOF(可用其它特殊成對(duì)字符替代)之間的內(nèi)容通過<<追加給冒號(hào)(:),但是冒號(hào)對(duì)它們啥都不做,就相當(dāng)于沒做任何處理和輸出,就相當(dāng)于注釋了
[root@web01 ~]# cat oldboy.sh
#!/bin/bash
:<<EOF
echo "I am oldboy"
echo "I am oldboy"
echo "I am oldboy"
EOF #<==頂格寫,和老男孩老師講的cat命令追加多行文本是一個(gè)原理。
echo "I am oldboy"
[root@web01 ~]# sh oldboy.sh
I am oldboy