如何調試Linux shell指令碼

來源:互聯網
上載者:User

shell也有一個真實的偵錯模式。如果在指令碼"strangescript" 中有錯誤,您可以這樣來進行調試:

sh -x strangescript

  這將執行該指令碼並顯示所有變數的值。

  shell還有一個不需要執行指令碼只是檢查文法的模式。可以這樣使用:

sh -n your_script

  這將返回所有語法錯誤。

linux/unix shell l指令碼調試方法

Shell提供了一些用於調試指令碼的選項,如下所示:

-n
讀一遍指令碼中的命令但不執行,用於檢查指令碼中的語法錯誤

-v
一邊執行指令碼,一邊將執行過的指令碼命令列印到標準錯誤輸出

-x
提供跟蹤執行資訊,將執行的每一條命令和結果依次列印出來

使用這些選項有三種方法,一是在命令列提供參數

$ sh -x ./script.sh二是在指令碼開頭提供參數

#! /bin/sh -x第三種方法是在指令碼中用set命令啟用或禁用參數

複製代碼 代碼如下:#! /bin/sh
if [ -z "$1" ]; then
set -x
echo "ERROR: Insufficient Args."
exit 1
set +x

fiset -x和set +x分別表示啟用和禁用-x參數,這樣可以只對指令碼中的某一段進行跟蹤調試。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.