shell脚本调试
方法一:
bash -n scriptfile 只检查语法错误,不执行命令
bash -u scriptfile 如果使用了未定义的变量就给出出错消息
bash –un scriptfile 查看是否有未定义变量
bash -v scriptfile 在执行命令之前回显他们
bash -x scriptfile 打印执行的每一行命令和当前状态
bash -vx sciptfile 查看脚本详细运行过程
方法二:
还可以用echo模拟断点来打印输出信息。
方法三:
输出到日志
> X.log 2>&1
---------------------------------------------------
在crontab中的调试:
如果在命令行跑过了,在crontab跑不过可以在脚本第一行加上配置文件:
source ~/.bash_profile (不同的系统配置文件可能不同)
有时候是解释器不同,所以这样也能跑过:
bash $dir/$yourscript.sh
无非是环境变量和路径的问题。
未完待续......