Shell脚本在Bash/KSH下放置多行注释
时间:2020-01-09 10:37:19 来源:igfitidea点击:
我想在shell脚本下使用多行注释。在C/C ++中,我可以使用以下格式:/*我的c代码注释#2等等foo bar .... * /
如何在shell脚本下放置多行注释?您能告诉设置多行shell脚本注释的方法吗?
默认情况下,shell脚本可以用#字符注释掉,例如:
# my comment goes here
Bash Shell脚本放入多行注释语法
对于多行注释,请使用以下语法:
#!/usr/bin/env bash # my comment 1 # my comment 2 # my comment N
但是,您可以按以下方式使用HERE DOCUMENT功能:
#!/bin/bash echo "Say Something" <<COMMENT1 your comment 1 comment 2 blah COMMENT1 echo "Do something else"
此类重定向告诉shell程序从当前源(HERE)读取输入,直到看到仅包含单词(HERE)的行。
这里的单词不受变量名,参数扩展,算术扩展,路径名扩展或命令替换的约束。
读取到该点的所有行,然后用作命令的标准输入。
以这种方式处理文件通常在这里称为文档。
如果您不想在单引号中使用变量名,参数扩展,算术扩展,路径名扩展或命令替换引号HERE(COMMENTS):
Bash 注释示例
重要的是,将EOF放在单引号('EOF')中,以避免命令执行和措辞。
这是Shell脚本示例中的块注释:
#!/usr/bin/env bash echo "*** Before comment block ***" : <<'EOF' CODE block starts CODE block ends here EOF echo "*** After comments block ***"
在Bash脚本中编写多行注释
多行shell脚本注释
Ikram在下面的评论部分中指出的另一种选择:
#!/bin/bash foo=bar : ' This is a test comment Author foo bar Released under GNU ' echo "Init..." # rest of script
请注意,:
是shell内置命令。
在bash(1)手册页中:
:[参数]无作用;该命令除了扩展参数和执行任何指定的重定向外,什么也不做。
返回零退出代码。
因此语法为:
: ' your comments here '
Shell脚本中使用的Null命令放置多个注释。
":
"无效。
换句话说,该命令不执行任何操作,并且始终以成功代码退出。