shell脚本调试

调了半个下午的shell脚本。。shell真是一个NB的工具。。多谢一个空格,少写一个空格都能让人调到死。。

1、有些很诡异的错误,执行的时候报错的位置并不一定正确,下午在初始定义变量的时候最后少写了",结果执行的时候报的是跟这行隔的很远的一行syntax error near unexpected token `(',这个可以用-x来调试发现

2、echo "some thing" > $file

当使用重定向符号>将输出流定位到file的时候,若file不存在则自动创建。但是!!!自动创建的前提是file所在的目录已经存在,只能手动mkdir出目录,才能时间自动创建文件。

3、

DATE_FORMAT = $(echo $SELECTDATE | sed 's/-//g') 

这个语句会导致:

++ echo 2013-08-09
++ sed s/-//g
+ DATE_FORMAT = 20130809
******.sh: line 65: DATE_FORMAT: command not found

因为等号左右各有一个空格。。就悲剧了。。把DATE_FORMAT当成一个命令

等号两边千万不要有空格。

4、在使用mysql命令的时候

-e 参数后面的语句加上双引号“”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值