实战演练

  • 使用-x,启用shell脚本的跟踪调试功能:
[root@shaofeng ~]# bash -x ./sleep.sh #或者sh替换bash
  • 使用set -x和set +x对脚本进行部分调试。例如:
[root@shaofeng ~]# cat ./debug.sh
#!/bin/bash
#文件名:debug.sh
for i in {1..6};
do
        set -x
        echo $i
        set +x
done
echo "Script excuted"
  • 加参数进行debug
[root@shaofeng ~]# _DEBUG=on ./script.sh
1
2
3
4
5
6
7
8
9
10
[root@shaofeng ~]# cat ./script.sh
#!/bin/bash
function DEBUG() {
        [ "$_DEBUG" == "on" ] && $@ || :
}
for i in {1..10}
do
        DEBUG echo $i
done

工作原理

  • set -x:在执行时显示参数和命令
  • set +x:禁止调试
  • set -v:当命令进行读取时显示输入
  • set +v:禁止打印输入

补充内容

  • #!/bin/bash -xv,不用任何其他选项就可以启用调试功能。

results matching ""

    No results matching ""