linux脚本错误: line *: [: missing `]',linux编写shell脚本时的注意点

转载:https://www.cnblogs.com/bovenson/p/4548079.htmlhtml

关于shell的一些注意点,粘贴自拉钩教育精选评论:测试开发核心技术 46 讲——>第6讲shell

一、[ ]表示条件测试。注意这里的空格很重要。要注意在'['后面和']'前面都必需要有空格测试

二、在shell中,then和fi是分开的语句。若是要在同一行里面输入,则须要用分号将他们隔开。htm

三、注意if判断中对于变量的处理,须要加引号,以避免一些没必要要的错误。没有加双引号会在一些含空格等的字符串变量判断的时候产生错误。好比[ -n "$var" ]若是var为空会出错blog

四、判断是不支持浮点值的进程

五、若是只单独使用号,系统会认为是输出或者输入重定向,虽然结果显示正确,可是实际上是错误的,所以要对这些符号进行转意开发

六、在默认中,运行if语句中的命令所产生的错误信息仍然出如今脚本的输出结果中字符串

七、使用-z或者-n来检查长度的时候,没有定义的变量也为0变量

八、空变量和没有初始化的变量可能会对shell脚本测试产生灾难性的影响,所以在不肯定变量的内容的时候,在测试好前使用-n或者-z测试一下技术

九、? 变量包含了以前执行命令的退出状态(最近完成的前台进程)(能够用于检测退出状态)

相关文章
相关标签/搜索