时间:2023-11-02人气:作者:未知
将#号置于要注释部分的前面即可(包括行首)
严谨来说这是shell的注释。
shell的注释跟代码的注释类似,既有单行也有多行。
【单行注释】
用#号置于要注释部分的前面来实现
例1(行首,整行):
#ps -elf
例2(中间,部分):
echo "File not found" #not been exec
【多行注释】
方法一:
: 'BLOCK
语句块
BLOCK'
注1:BLOCK是习惯写法,可以替换为其他字母、数字、非专用字符(如@可以、#不可以,'单引号看似可以,实际上会造成无法结束,即后面部分全部注释)
注2:该用法会检查语句块中反引号`是否匹配,不成对出现时会报错
方法二:
: 'BLOCK
语句块
BLOCK'
注1:冒号与单引号之间有空格
注2:BLOCK可以完全省略
注3:该用法解决了方法一的反引号`匹配检查问题
方法三:
:||{
语句块
}
方法四:
if false ; then
语句块
fi
方法五:
假条件&&{
语句块
}
注1:&&之前满足一个结果为假的条件即可,如((0))、[ `echo` -e 1 ]等等
注2:方法三至五,法语法检查严格,除了方法一的检查外,所有其他匹配如括号、单/双引号等都会检查,即去除注释后必须能够正常执行的语句块才能用此三种注释。
单行、多行注释样例:
echo "File not found" #test
init=`ps -elf | grep init |grep -v grep`
echo "$init"
#echo "$init"
echo "M1"
:<<BLOCK
p1=`ps -elf`
echo "$p1"
BLOCK
echo "M2"
: 'BLOCK
p2=`ps -elf`
echo "$p2"
BLOCK'
echo "M3"
: '
p3=`ps -elf`
echo "$p3"
'
echo "M4"
:||{
p4=`ps -elf`
echo "$p4"
}
echo "M5"
if false ; then
p5=`ps -elf`
echo "$p5"
fi
echo "M6"
[ `echo` -e 1 ]&&{
p6=`ps -elf`
echo "$p6"
}
echo END
执行结果:
File not found
4 S root 1 0 0 75 0 - 2592 ? Jun23 ? 00:00:00 init [5]
M1
M2
M3
M4
M5
M6
END