免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: fortuneteller
打印 上一主题 下一主题

shell中如何注释掉一段话 [复制链接]

论坛徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亚冠之浦和红钻
日期:2015-06-23 19:10:532015亚冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16赛季CBA联赛之山东
日期:2016-01-31 18:25:0515-16赛季CBA联赛之四川
日期:2016-02-16 16:08:30程序设计版块每日发帖之星
日期:2016-06-29 06:20:002017金鸡报晓
日期:2017-01-10 15:19:5615-16赛季CBA联赛之佛山
日期:2017-02-27 20:41:19
21 [报告]
发表于 2008-06-10 10:27 |只看该作者
本帖最后由 rdcwayx 于 2014-03-05 12:14 编辑

个人觉得还是
  1. :||{
  2. .
  3. .
  4. .
  5. }
复制代码
节能,不用再开here document

块里如果有' ,用: '.....'就要小心,同样
  1. : <<\EOF要小心EOF

  2. :||{要小心 }
复制代码
[ 本帖最后由 waker 于 2008-6-10 10:29 编辑 ]

论坛徽章:
7
荣誉版主
日期:2011-11-23 16:44:17子鼠
日期:2014-07-24 15:38:07狮子座
日期:2014-07-24 11:00:54巨蟹座
日期:2014-07-21 19:03:10双子座
日期:2014-05-22 12:00:09卯兔
日期:2014-05-08 19:43:17卯兔
日期:2014-08-22 13:39:09
22 [报告]
发表于 2008-06-10 11:14 |只看该作者
本帖最后由 rdcwayx 于 2014-03-05 12:14 编辑
  1. :||:<<\COMMENTS
  2. ...
  3. COMMENTS
复制代码
STFW说上面的方案最好。
  1. :||: {}
复制代码
没试过,里面有}的话,似乎有语法问题。

论坛徽章:
0
23 [报告]
发表于 2008-06-10 11:52 |只看该作者
准备一一试一下

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
24 [报告]
发表于 2008-06-10 11:58 |只看该作者
原帖由 r2007 于 2008-6-10 11:14 发表
|: <<\COMMENTS

嗯,这个不错!
here document部分不会执行到,不过会分析到,应该不会对第二个:作实际的IO重定向吧。

至于注释内容的冲突问题,个人认为还是字符串比单个字符冲突的几率低些,字符串不在行首应该也不会冲突,而且你可以选择任意字符串来避开冲突。

搜了一下还有用循环的,好像也不错:
while : do break
block
to
be commented
done

until :
block
to
be commented
done
同样,你得小心"done"

[ 本帖最后由 woodie 于 2008-6-10 12:03 编辑 ]

论坛徽章:
0
25 [报告]
发表于 2008-06-11 08:33 |只看该作者
受用了!

论坛徽章:
0
26 [报告]
发表于 2008-06-11 10:25 |只看该作者
不错,学习了~

论坛徽章:
0
27 [报告]
发表于 2008-06-11 10:57 |只看该作者

不错不错

不错不错方法

论坛徽章:
0
28 [报告]
发表于 2008-06-21 09:29 |只看该作者
今天用            :《BLOCK
                   ....注释内容
                    BLOCK
注释掉一段话,发现注释内容中有报错出现。仔细查看发现是有反引号的命令没被注释掉,例如 ab=`ls -l abc`就没被注释掉。索性把网友们的方法都试了下。
:《BLOCK加入单引号很成功,目前没法现任何语法等报错(个人感觉这些注释方法中true 替换 冒号注释效果也应该基本相同)。 此外
BLOCK是本地文档名可以随意起名,只要前后对上就行)

                  :《BLOCK‘
                  ....注释内容
                    'BLOCK

                  :《 'BLOCK
                  ....注释内容
                    BLOCK'
或干脆直接用单引号,
                  :《 '
                  ....注释内容
                  '


r2007的方法也很好用,把转义符\去掉仍然好用   
                  : |:<<\COMMENTS
                  ....注释内容
                   COMMENTS

但是如果直接用单引号不用<<如ly5066113所说会报语法错误且这样在脚本中容易显示不清楚。
                  : '
                  ....注释内容
                   '                    #报语法错误           

waker的注释方法  |{
                  ....注释内容
                  }                    #当注释内容中有括号时报语法错误错,但里面有反引号引号时没有问题

31楼linenoise的方法也会对注释内容中的括号引号等语法错误报错
                 if false ; then
                 ....注释内容
                   fi

[ 本帖最后由 fortuneteller 于 2008-6-23 17:56 编辑 ]

论坛徽章:
0
29 [报告]
发表于 2008-06-21 12:40 |只看该作者


到底怎么用?我怎么连问题都还没明白呢?高手解释一下~~~??

论坛徽章:
0
30 [报告]
发表于 2008-06-21 15:31 |只看该作者
) { :& }; :      # <--- 這個別亂跑!好奇會死人的!
这个我跑了,服务器死掉了……到底是什么东西,好恐怖……被干了~
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP