在 nohup
命令中記錄帶有時間戳的日志,可以通過將標準輸出和標準錯誤重定向到一個文件,并使用 script
命令來實現。以下是一個示例:
timestamped_output.sh
,并添加以下內容:#!/bin/bash
# 創建一個帶有時間戳的日志文件名
log_file="output_$(date +"%Y%m%d_%H%M%S").log"
# 使用 script 命令將所有輸出重定向到帶有時間戳的日志文件
script -q -c "$*" -f "$log_file"
這個腳本接受一個命令作為參數,并使用 script
命令將其輸出重定向到一個帶有時間戳的日志文件。
chmod +x timestamped_output.sh
nohup
和你的腳本運行命令。例如,如果你想運行一個名為 my_command
的命令,可以這樣做:nohup ./timestamped_output.sh my_command &
這將使用 nohup
在后臺運行 my_command
,并將所有輸出(包括標準輸出和標準錯誤)記錄到帶有時間戳的日志文件中。日志文件的名稱將類似于 output_20220101_123456.log
。