日付を使用して日付をYYYYMMDDHHMM形式に変換できますか?

日付を使用して日付をYYYYMMDDHHMM形式に変換できますか?

私の日付形式はYYYYMMDDHHMMです。たとえば、このユーティリティを使用してタイムスタンプをフォーマットする方法はありますか20160713100110:01 AM July 13, 2016date

ベストアンサー1

GNU日付があると仮定すると、日付と時刻の間にスペースを追加して渡す必要があります。-d

$ date -d "20160713 1001"
Wed Jul 13 10:01:00 EDT 2016

パラメータ拡張により、これを簡単に実行できます。例えば

$ d=201607131001
$ date -d "${d%????} ${d#????????}"
Wed Jul 13 10:01:00 EDT 2016

その後、標準+書式文字列を使用して任意の方法で書式設定できます(man dateすべてのオプションの説明)。

$ d=201607131001
$ date -d "${d%????} ${d#????????}" +"%I:%M %p %B %d, %Y"
10:01 AM July 13, 2016

おすすめ記事