国产探花免费观看_亚洲丰满少妇自慰呻吟_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命令

省略


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 泰安市| 大兴区| 赣州市| 崇州市| 广灵县| 通州市| 孟津县| 安西县| 青神县| 蓬安县| 平阳县| 赤城县| 霸州市| 广西| 罗田县| 新源县| 天长市| 涡阳县| 万年县| 老河口市| 栾城县| 安义县| 昭苏县| 贵阳市| 瓦房店市| 樟树市| 徐汇区| 丰都县| 永福县| 陇南市| 隆德县| 绵阳市| 扶沟县| 宁晋县| 顺昌县| 新蔡县| 兴城市| 松原市| 清河县| 福泉市| 大新县|