OS X の `date` コマンドには ISO 8601 `-I` オプションがありませんか? 質問する

OS X の `date` コマンドには ISO 8601 `-I` オプションがありませんか? 質問する

Bash スクリプトで、現在の日時をISO 8601形式 (UTC が望ましい)で出力したいのですが、次のように簡単に実行できるようですdate -I

http://ss64.com/bash/date.html

しかし、これは私の Mac では動作しないようです:

$ date -I
date: illegal option -- I
usage: date [-jnu] [-d dst] [-r seconds] [-t west] [-v[+|-]val[ymwdHMS]] ... 
            [-f fmt date | [[[mm]dd]HH]MM[[cc]yy][.ss]] [+format]

そして実際、man dateこのオプションはリストされていません。

なぜそうなるのか、または ISO 8601 形式で日付を印刷する他の (簡単な) 方法を知っている人はいますか? よろしくお願いします!

ベストアンサー1

使用できる

date "+%Y-%m-%d"

または、完全にISO-8601 に準拠した日付の場合は、次のいずれかの形式を使用します。

date -u +"%Y-%m-%dT%H:%M:%SZ"

出力:

2011-08-27T23:22:37Z

または

date +%Y-%m-%dT%H:%M:%S%z

出力:

2011-08-27T15:22:37-0800

おすすめ記事