在linux中调试shell脚本,常用的有三个方法。这里介绍下,希望对大家有所帮助。
方法一,使用echo命令。
在调试shell脚本时,可以用echo打印任何变量值,以判断错误原因。
方法二,shell中有一个真实的调试模式。
如果在脚本"strangescript" 中有错误,可以这样来行调试:
sh -x strangescript
以上命令将执行该脚本并显示所有变量的值。
不需要执行脚本只是检查语法的模式,可以这样:
复制代码 代码示例:
sh -n your_script
将返回所有语法错误。
sh调试脚本的选项:
-n
读一遍脚本中的命令但不执行,用于检查脚本中的语法错误
-v
一边执行脚本,一边将执行过的脚本命令打印到标准错误输出
-x
提供跟踪执行信息,将执行的每一条命令和结果依次打印出来
这里说下方法三,
在命令行提供参数:
复制代码 代码示例:
$ sh -x ./script.sh
或在脚本开头提供参数:
复制代码 代码示例:
#! /bin/sh -x
或在脚本中用set命令启用或禁用参数,这样更容易跟踪程序错误,整个调试过程都会显示在输出信息中。
例如:
复制代码 代码示例:
#! /bin/sh
if [ -z "$1" ]; then
set -x
echo "ERROR: Insufficient Args."
exit 1
set +x
fi
说明:set -x和set +x分别表示启用和禁用-x参数,可以只对脚本中的某一段进行跟踪调试。
有关shell脚本调试的方法,就介绍这些吧,希望可以帮助到大家。