欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Linux Shell腳本系列教程(七):腳本調(diào)試

 更新時間:2015年06月02日 15:26:59   投稿:junjie  
這篇文章主要介紹了Linux Shell腳本系列教程(七):腳本調(diào)試,本文講解了Bash內(nèi)建調(diào)試功能和自定義調(diào)試功能等內(nèi)容,需要的朋友可以參考下

一、調(diào)試腳本

調(diào)試功能是每一種編程語言都應(yīng)該實現(xiàn)的重要特性之一,當(dāng)出現(xiàn)一些始料未及的情況時,用它來生成腳本的運行信息,調(diào)試信息可以幫你弄清楚是什么原因使得程序發(fā)生崩潰或者行為異常。
二、Bash內(nèi)建調(diào)試功能

使用Bash的內(nèi)建調(diào)試功能,可以對整個腳本進行調(diào)試,也可以僅對腳本中的某些語句進行調(diào)試。
#使用set -x和set +x對腳本的某一句進行調(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選項對整個腳本進行調(diào)試
bash -x script.sh                  #等價于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運行下列腳本
#!/bin/bash
function DEBUG()
{
   [ "$_DEBUG" == "on" ] && $@ || : #使用_DEBUG環(huán)境變量調(diào)試
}
for i in { 1 2 3 }
do
    DEBUG echo $i
done     

我們在每一個需要打印調(diào)試信息的語句前面家DEBUG,如果沒有把_DEBUG=on傳遞個腳本,那么調(diào)試信息就不會打印出來。在Bash中,:告訴shell不要進行任何操作。

相關(guān)文章

  • 詳解git無法pull倉庫refusing to merge unrelated histories

    詳解git無法pull倉庫refusing to merge unrelated histories

    這篇文章主要介紹了詳解git無法pull倉庫refusing to merge unrelated histories的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • Shell+Curl網(wǎng)站狀態(tài)檢查腳本 抓出無法訪問的站點

    Shell+Curl網(wǎng)站狀態(tài)檢查腳本 抓出無法訪問的站點

    這篇文章主要介紹了Shell+Curl網(wǎng)站狀態(tài)檢查腳本 抓出無法訪問的站點,需要的朋友可以參考下
    2015-10-10
  • linux shell命令行選項與參數(shù)用法詳解

    linux shell命令行選項與參數(shù)用法詳解

    本文介紹了linux shell中使用命令行選項與命令行參數(shù)的方法,在bash中,可以用以下三種方式來處理命令行參數(shù),每種方式都有自己的應(yīng)用場景
    2014-04-04
  • Linux下的ctrl常用組合鍵及操作方法

    Linux下的ctrl常用組合鍵及操作方法

    這篇文章主要介紹了Linux下的ctrl常用組合鍵及操作方法,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-08-08
  • Shell中sed編輯器的具體使用

    Shell中sed編輯器的具體使用

    sed是一種流編輯器,sed編輯器可以根據(jù)命令來處理數(shù)據(jù)流中的數(shù)據(jù),本文就來介紹一下Shell中sed編輯器的具體使用,具有一定的參考價值,感興趣的可以了解一下
    2024-01-01
  • scp命令詳解(全)

    scp命令詳解(全)

    這篇文章主要介紹了scp命令,scp如何做遠程拷貝,下面小編幫助大家解決有關(guān)scp命令相關(guān)知識,需要的朋友可以參考下
    2015-08-08
  • Linux 刪除文件夾和文件的命令(強制刪除包括非空文件)

    Linux 刪除文件夾和文件的命令(強制刪除包括非空文件)

    linux刪除目錄很簡單,很多人還是習(xí)慣用rmdir,不過一旦目錄非空,就陷入深深的苦惱之中,現(xiàn)在使用rm -rf命令即可。接下來通過本文給大家介紹Linux 刪除文件夾和文件的命令(強制刪除包括非空文件),感興趣的朋友跟隨腳本之家小編一起學(xué)習(xí)吧
    2018-05-05
  • Linux查看端口占用lsof -i:port的方法

    Linux查看端口占用lsof -i:port的方法

    下面小編就為大家?guī)硪黄狶inux查看端口占用lsof -i:port的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • 一篇教會你寫90%的shell腳本(入門小結(jié))

    一篇教會你寫90%的shell腳本(入門小結(jié))

    這篇文章主要介紹了一篇教會你寫90%的shell腳本,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • shell腳本自動修復(fù)mysql損壞的表

    shell腳本自動修復(fù)mysql損壞的表

    這篇文章主要介紹了shell腳本如何自動修復(fù)mysql損壞的表,需要的朋友可以參考下
    2015-10-10

最新評論