国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

第16章 Debug Shell腳本

2019-11-08 18:21:42
字體:
來源:轉載
供稿:網友

本章主要介紹一些方便的、有效的、更好的輸出調試信息的方法。

本章要學習的知識點

(1)看懂腳本輸出的錯誤信息,并逐步定位到真正的錯誤;

(2)如何堅持shell腳本的語法是否有錯誤;

(3)如何通過track模式找到程序的錯誤;

(4)分析腳本錯誤的一般步驟;

(5)如何在腳本程序中添加DEBUG支持。

1.     分析報錯信息

當我們運行自己編寫的shell腳本時,經常會遇到腳本輸出錯誤信息。錯誤信息只能說明確實有錯誤發生,但是并不一定告訴我們錯誤所發生的真實原因和出錯位置。因此我們需要對錯誤信息進行分析和推斷,通常沿著報錯行往前面找。

2.     進入debug模式

debug模式是一種檢查錯誤的模式,本節主要介紹3中debug模式:

模式

選項

描述

語法檢查模式

-n

不執行命令,只進行語法檢查

Vebose模式

-v

打印shell讀取的所有語句

Trace模式

-x

打印執行替換操作后shell實際執行的命令

進入debug模式的格式:

$/bin/bash –option filename

 

前面使用的進入debug模式的方法會在腳本的整個運行期間中都起到作用,如果腳本文件很長,這種方式就會產生大量的輸出信息:假如我們只想對某一段代碼或某一個函數進行debug調試,該如何?

解決方案:通過執行set命令可以在腳本的運行過程中打開或關閉debug模式。

它的使用方法如下:

#打開trace debug模式

set –x

#關閉trace debug模式

set +x

3.     在腳本中添加debug功能

我們知道通過執行set –x命令可以讓腳本輸出debug的trace信息,但是當腳本交付使用時,刪除或注釋這些命令也很麻煩。因此,希望有一個開關,通過它控制是否大于debug信息。可以在腳本中使用if語句判斷環境變量DEBUG的值,如果等于TRUE就執行set –x命令,如下所示:

#!/bin/bash

if [ “DEBUG”=”true”]

the

    set –x

fi

echo “do stuff…”

if [ “DEBUG”=”true”]

the

    set +x

fi

 

4.     使用trap命令

省略


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 广宁县| 宿迁市| 巩留县| 嵩明县| 大城县| 玛曲县| 德阳市| 历史| 天长市| 建德市| 五台县| 泰安市| 且末县| 衡阳市| 文山县| 津市市| 合肥市| 加查县| 宝清县| 琼海市| 武川县| 霍林郭勒市| 中方县| 疏附县| 定州市| 塘沽区| 安远县| 开化县| 道真| 历史| 莎车县| 青岛市| 曲松县| 富蕴县| 将乐县| 新干县| 兴和县| 将乐县| 呼图壁县| 得荣县| 彭泽县|