Bash

使用時間戳回顯每個 shell 腳本命令

  • December 13, 2019

set -xset -v列印每個執行的命令。

如何在命令開始執行時列印命令?

在 Bash 中,可以使用內置的“trap”和“DEBUG”級別來實現每個命令之後的程式碼執行。

在 bash 中做:幫助陷阱或參考 bash 手冊頁,並查找陷阱部分

例子:

trap 'date' DEBUG

這將在每個命令之後執行命令“date”。

當然,您可以根據需要格式化時間戳,請參閱“日期”手冊頁。

如果要刪除換行符,以便時間戳出現在下一個命令的前面,您可以執行以下操作:

trap 'echo -n $(date)' DEBUG

並終止此:

trap '' DEBUG

您可以結合“set -x”/“set +x”

引用自:https://serverfault.com/questions/695438