shell debug

(1) 使用选项–x,启用shell脚本的跟踪调试功能:

$ bash -x script.sh

运行带有-x标志的脚本可以打印出所执行的每一行命令以及当前状态。注意,你也可以使用sh -x script。 

for i in {1..6};do

       echo $i

echo "Script executed"


root@ubuntu:~/yqiu# bash -x debug.sh 
+ for i in '{1..6}'
+ echo 1
1
+ for i in '{1..6}'
+ echo 2
2
+ for i in '{1..6}'
+ echo 3
3
+ for i in '{1..6}'
+ echo 4
4
+ for i in '{1..6}'
+ echo 5
5
+ for i in '{1..6}'
+ echo 6
6
+ echo 'Script executed'
Script executed

(2) 使用set -xset +x对脚本进行部分调试。例如:

#!/bin/bash#文件名: debug.sh

for i in {1..6};do

       set -x
       echo $i
       set +x

echo "Script executed"
在上面的脚本中,只会打印出echo $i的调试信息,因为使用了-x+x对调试区域

进行了限制。 


#!/bin/bash
function DEBUG()
{
        [ "$_DEBUG" == "on" ] && $@ || :
}


for i in {1..10}
do
        DEBUG echo $i
done
echo "script ended"

可以将调试功能置为"on"来运行上面的脚本:

           $ _DEBUG=on ./script.sh

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值