Chinaunix

标题: 收集一下shell的坑 [打印本页]

作者: flint1985    时间: 2012-08-10 15:12
标题: 收集一下shell的坑
也许你实现了很牛逼的功能!
也许很多时候你的程序看起来很健康!
也许你的代码运行了很长时间都没有出现问题!
。。。
但是在那一天的一个时刻,突然这个程序出现了问题,但是你又很难发现问题,我们来一起收集这些容易被忽略的但是又可能存在的坑。

我先说一个,一般awk中的变量都是全局变量,如果awk中定义了多个函数,很容易发生变量冲突,不易追查,因此建议如果awk中存在超过2个函数,最好将只在本函数用到的变量定义为局部变量。Awk 提供了一种蹩脚的方式来定义局部变量,那就是通过函数的参数列表,例如function factorial(n, ARGVEND, i),这里的_ARGVEND_只是一个标识,表明这个及以后的参数实际是函数中的局部变量,这个标识之前的才是真正函数参数,避免发生误解。
作者: hbmhalley    时间: 2012-08-10 15:45
余悸 ..
作者: winway1988    时间: 2012-08-10 22:11
  1. $ dir="DIR" //comment
  2. $ cd "$dir"
复制代码
悲剧的把shell的注释'#'写成了C的注释'//',更悲剧的是没有判断cd是否成功,更更悲剧的是cd后的操作包括rm
作者: dn833    时间: 2012-08-10 23:38
find配合exec删文件,结果不加-maxdepth。。。。。。结果可想而知了
作者: zooyo    时间: 2012-08-11 14:01
提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2