一、調(diào)試腳本
調(diào)試功能是每一種編程語言都應(yīng)該實(shí)現(xiàn)的重要特性之一,當(dāng)出現(xiàn)一些始料未及的情況時(shí),用它來生成腳本的運(yùn)行信息,調(diào)試信息可以幫你弄清楚是什么原因使得程序發(fā)生崩潰或者行為異常。
二、Bash內(nèi)建調(diào)試功能
使用Bash的內(nèi)建調(diào)試功能,可以對(duì)整個(gè)腳本進(jìn)行調(diào)試,也可以僅對(duì)腳本中的某些語句進(jìn)行調(diào)試。
#使用set -x和set +x對(duì)腳本的某一句進(jìn)行調(diào)試
復(fù)制代碼 代碼如下:
#!/bin/bash
for i in { 1 2 3 4 5 6 };
do
set -x #開啟調(diào)試功能
echo $i #要調(diào)試的語句
set +x #關(guān)閉調(diào)試功能
done
echo "Script executed."
復(fù)制代碼 代碼如下:
#使用 -x選項(xiàng)對(duì)整個(gè)腳本進(jìn)行調(diào)試
bash -x script.sh #等價(jià)于sh -x script.sh
三、 自定義調(diào)試功能
Bash內(nèi)建的調(diào)試功能僅能輸出固定格式的調(diào)試信息,但在很多情況下,我們需要以自定義的格式顯示調(diào)試信息,這可以通過 _DEBUG環(huán)境變量來建立這類調(diào)試風(fēng)格。
復(fù)制代碼 代碼如下:
#使用_DEBUG=on bash script.sh運(yùn)行下列腳本
#!/bin/bash
function DEBUG()
{
[ "$_DEBUG" == "on" ] $@ || : #使用_DEBUG環(huán)境變量調(diào)試
}
for i in { 1 2 3 }
do
DEBUG echo $i
done
我們?cè)诿恳粋€(gè)需要打印調(diào)試信息的語句前面家DEBUG,如果沒有把_DEBUG=on傳遞個(gè)腳本,那么調(diào)試信息就不會(huì)打印出來。在Bash中,:告訴shell不要進(jìn)行任何操作。
您可能感興趣的文章:- Linux Shell腳本系列教程(一):Shell入門
- Linux Shell腳本系列教程(二):終端打印命令詳解
- Linux Shell腳本系列教程(三):變量和環(huán)境變量
- Linux Shell腳本系列教程(四):使用函數(shù)添加環(huán)境變量
- Linux Shell腳本系列教程(五):數(shù)學(xué)運(yùn)算
- Linux Shell腳本系列教程(六):數(shù)組和關(guān)聯(lián)數(shù)組