Shell Scripts的追踪与debug

本文详细介绍了使用bash命令的debug选项进行Shell脚本调试的方法,包括语法检查、脚本内容预览及执行过程跟踪,帮助开发者高效定位并解决脚本问题。

脚本的追踪与debug

当我们写完一个脚本时,往往需要先进行语法测试,期待结果验证之后,才会真正的去生产环境下执行,那么shell script如何debug呢。

bash命令的debug选项

选项作用
-n不执行脚本,只检查语法问题
-v在执行脚本之前,先将脚本的内容输出到控制台
-x将使用到的脚本内容,显示到屏幕上,(将脚本执行过程中的信息,输出到屏幕,并且,会将变量的值输出,而不是变量名称,很强大,很常用)

接下来我们 将之前写过的demo稍作改写,(由于之前的范围太大不方便观看,所以呢,我们将循环范围缩小到1-10)

#!/bin/bash
# Program:
#       show the basic use of for loop
# History:
# 2019/10/24    Shuu    First release
#for var in $(seq 1 100)
#for var in {1..100}
#for (( var=1;var<=100;var++ ))
for (( var=1;var<=10;var++ ))
do
        let sum+=${var}
done
echo ${sum}

-n检查语法问题

如若没有语法问题,则不会输出任何信息。
注:这里用的为什么是sh而不是bash呢,之前也说过,这里再提一句,因为sh其实就是bash的一个连接而已。
在这里插入图片描述
我们稍作改动,让语法发生错误,比如我们将for循环的 结束关键字done注释掉

for (( var=1;var<=10;var++ ))
do
        let sum+=${var}
#done
echo ${sum}

在这里插入图片描述
看看,检验出来语法错误了。

-v在脚本执行前,先将所有内容输出到屏幕

在这里插入图片描述
看看,结果与上面的-n相比,只是在报告脚本检验结果之前,先输出了脚本的内容。(包含头信息和注释)

-x强大的debug功能

在这里插入图片描述
看,脚本的执行过程,完全被显示在了屏幕上,这样可以方便我们进行逻辑跟踪,帮助我们进行debug调试。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值