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