Logs
日誌文件中的日期字元串列到時間戳列
我有這樣
log.txt
的範例輸出:... 10-Feb-2022 15:15:14.099 lorem 10-Feb-2022 15:15:15.133 ipsum 10-Feb-2022 15:15:16.233 dolor ...
我希望過濾後的 log.txt 的輸出是
... 1644480914 lorem 1644480915 ipsum 1644480916 dolor ...
我已經想出瞭如何將日期字元串轉換為時間戳
date --date='10-Feb-2022 15:15:14.099' +"%s" Output: 1644480914
我的大腦仍然不明白如何將該日期命令應用於 log.txt。
另外我如何管道該日期命令?
printf "10-Feb-2022 15.15.17.012 water" | date --date=<what must i put here?> + "%s"
我希望流水線命令的輸出是相同的,不同的是不干擾其他列,即
1644480917 water
您的
date
命令似乎允許-d
選擇傳達日期/時間。試試喜歡cut -d' ' -f-2 file | date +%s -f- | paste -d' ' - file | cut -d' ' -f1,4- 1644502514 lorem 1644502515 ipsum 1644502516 dolor
它
cut
是來自輸入的日期/時間欄位,通過(read DATEFILE) 選項將它們提供給date
命令,然後將其返回到輸入文件,然後輸出舊的日期/時間欄位。-f``paste``cut