【Linux】 常見Debug的方法

Debug的方法

  • sh -x 顯示執行過程,解決大部分問題
  • set命令設置開始/結束 Debug的位置 專門針對複雜的脚本
  • 單步執行,將無關代碼注釋掉
sh -x test.sh ++ pwd + logfile=/home/d5118267/shell_script/omnibaseTables.log ++ date '+%F %H:%M:%S' + Cdate='2021-09-03 02:04:15' + echo ============================================ + echo 2021-09-03 02:04:15 + T1=/appvol/ctm/omnibase/datarefine/datastructure/sql + T2=/appvol/ctm/omnibase/datarefine/datamodel/sql + T25=/appvol/ctm/omnibase/dataconsume/sql/BIZ_dataconsume_sql + T3=/appvol/ctm/omnibase/dataconsume/sql/IT_dataconsume_sql + '[' 0 -ne 4 ']' + echo 'Please input enough parameters' Please input enough parameters + exit 1

注意事項:
  1. 加號+ 代表執行進程
  2. 加號越多,代表優先級
  3. 沒有加號的,表示標準輸出
【【Linux】 常見Debug的方法】Debug 某個一個具體範圍,一條循環的脚本...
#!/bin/bash#1) Execute the T1-T3 tables in GCP #2) Create/Replace tables recordslogfile="`pwd`/omnibaseTables.log" Cdate=`date "+%F %H:%M:%S"` echo "============================================" >> $logfile set -x#從這裏開始檢查 echo $Cdate >> $logfile set +x#從這裏結束檢查結果: sh t0_t1.sh + echo 2021-09-03 02:29:54 + set +x Please input enough parameters

    推荐阅读