您的位置:首页 > 运维架构 > Linux

Linux下解决脚本错误

2016-12-28 22:25 232 查看
编写的脚本本身会出现许多类型的错误,基本的错误类型有两种:语法错误和逻辑错误。

①语法错误是编写程序时违反了所用编程语言的规则而造成的。它是在写脚本时最容易犯的错误,也是一类最容易修改的错误。这类错误包括:格式不对,丢失和错放了命令分隔符,单词拼写错误,括号或引号不成对等。当出现语法错误时,bash就不能解释代码,并且显示出错信息,说明它认为出了什么错误,以及其大约存在在哪一行。根据这些提示,可以编辑代码,排除其中的错误。

②逻辑错误非常多且难以预料,通常是由于程序的逻辑关系存在问题,如本该用小于等于运算符却使用了小于运算符,对于此类问题需要进行程序调试。程序员在调试程序上花费的时间往往比写代码多。

有一个很有用的技巧:使用set命令打开-x选项,或者在启动shell时使用-x选项,将shell设置为跟踪模式。

另一个有用技巧是,在程序中经常使用echo或print命令,以显示脚本当前执行到什么地方。如在改变变量值前后打印它,在关键点显示信息以说明正在进行何种类型的操作等等。如有必要,可将输出送到一个记录文件中,以便对程序的行为进行仔细分析。

此外,在两次测试之间对脚本的修改最好不要多于一处,这样有利于差错和改错。

下面是一个实现一个整数相加程序及在跟踪模式下运行的脚本;

$cat ex1
#!/bin/bash
#ex1 -- a program to sum a series of intergers

if [$# -eq 0]
then
echo "Usage:ex1 intergers"
exit 1
fi
sum = 0
until [$# -eq 0]
do
((sum = $sum + $1))
shift
done
echo $sum
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息