如何注释一个shell脚本中的特定行?

任何人都可以build议如何评论除#以外的shell脚本中的特定行,

假设如果我要评论5行,而不是添加#到每一行,有没有其他的方式来评论5行?

提前致谢。

您可以使用条件注释脚本的部分。

例如,以下脚本:

 DEBUG=false if ${DEBUG}; then echo 1 echo 2 echo 3 echo 4 echo 5 fi echo 6 echo 7 

会输出:

 6 7 

为了取消注释代码的部分,您只需要注释该variables:

 #DEBUG=false 

(这样做会打印数字1到7.)

是的(虽然这是一个讨厌的黑客)。 您可以使用heredoc :

 #!/bin/sh # do valuable stuff here touch /tmp/a # now comment out all the stuff below up to the EOF echo <<EOF ... ... ... EOF 

这是干什么的? heredoc将所有以下input提供给终止符(在这种情况下,EOF)到提名的命令中。 所以你可以围绕你想要评论的代码

 echo <<EOF ... EOF 

它将包含两个EOF之间包含的所有代码,并将它们提供给echoecho不会从stdin读取,因此全部被扔掉)。

请注意,有了上面你可以把任何东西放在heredoc 。 它不一定是有效的shell代码(即它不必正确parsing)。

这是非常讨厌的,我只是提供一个兴趣点。 你不能做相当于C的/* ... */