多行注释的问题
发表于 : 2012-09-21 17:50
很多搜索结果基本都给了相同的方法,以http://blog.chinaunix.net/uid-291731-id-3019021.html为例
我只好使用if语句来注释了
我的脚本1、最简单方法
:<<BLOCK
....注释内容
BLOCK
把输入重定义到前面的命令,但是 : 是空命令,所以就相当于注释了。
如果注释中有反引号的命令就会报错,反引号部分不会被注释掉,例如 var=`ls -l` 就不会被注释掉。
2、解决注释中有反引号的问题
A、方法一
:<<BLOCK'
....注释内容
'BLOCK
B、方法二
:<<'BLOCK
....注释内容
BLOCK'
C、方法三
:<<'
....注释内容
'
代码: 全选
#!/bin/bash
:<<COMMENT'
#+++++++++++++++++++++++Cartesian to Direct++++++++++++++++++++++++++++++++++++
x=`cat tmp | head -3 | tail -1 | awk '{printf "%.8f",$1}'`
y=`cat tmp | head -3 | tail -1 | awk '{printf "%.8f",$2}'`
z=`cat tmp | head -3 | tail -1 | awk '{printf "%.8f",$3}'`
a=$(echo "scale=8;($x**$x + $y**$y + $z**$z)**0.5"|bc)
x=`cat tmp | head -4 | tail -1 | awk '{printf "%.8f",$1}'`
y=`cat tmp | head -4 | tail -1 | awk '{printf "%.8f",$2}'`
z=`cat tmp | head -4 | tail -1 | awk '{printf "%.8f",$3}'`
b=$(echo "scale=8;($x**$x + $y**$y + $z**$z)**0.5"|bc)
x=`cat tmp | head -5 | tail -1 | awk '{printf "%.8f",$1}'`
y=`cat tmp | head -5 | tail -1 | awk '{printf "%.8f",$2}'`
z=`cat tmp | head -5 | tail -1 | awk '{printf "%.8f",$3}'`
c=$(echo "scale=8;($x**$x + $y**$y + $z**$z)**0.5"|bc)
echo "$a $b $c"
'COMMNET
代码: 全选
./g2v: 行 17: 警告: 立即文档在第 17 行被文件结束符分隔 (需要 `COMMENT
#+++++++++++++++++++++++Cartesian to Direct++++++++++++++++++++++++++++++++++++
x=`cat tmp | head -3 | tail -1 | awk {printf')