Shell

日期字元串到 bash 中的紀元

  • January 31, 2017

如果我有以下格式的字元串,如何獲取紀元?

1/30/2017 11:14:55 AM

以下不起作用:

$ date -j  '1/30/2017 11:14:55 AM' +'%m/%d/%Y %H:%M:%S'  
date: illegal time format

只需指定輸入格式-f

$ date -jf '%m/%d/%Y %H:%M:%S %p' '1/30/2017 11:14:55 AM' '+%m/%d/%Y %H:%M:%S'
01/30/2017 11:14:55

接下來+輸出格式。如果你想要紀元時間,那就是+%s.

(請注意,該程式碼中沒有任何bash特定內容。該程式碼在任何 shell 中都將被解析為相同的,即使是非 Bourne 類似的。date不是bash內置命令,這是date在文件系統上找到的命令,特別是支持那些-f/ -jBSD 擴展。在非 BSD 系統上,無論 shell 是bash還是其他,該命令都可能不起作用。一些 shell 喜歡zshksh93具有內置的時間解析功能,但不是bash

引用自:https://unix.stackexchange.com/questions/341602