3

「YYYY-MM-DD」形式の日付を受け入れるシェルスクリプトを実行しています。この日付入力から、年、月、日を別々に取得するにはどうすればよいですか?

事前に返信いただきありがとうございます。

4

4 に答える 4

7

文字列をテキストとして処理することを除いて(grep/sed/awk/cut/...を使用)、dateコマンドで行うことができます:

kent$  date -d '2013-09-06' +%Y
2013

kent$  date -d '2013-09-06' +%m
09

kent$  date -d '2013-09-06' +%d
06
于 2013-09-06T08:28:26.450 に答える
1

これを行うと、1 つのコマンドでそれらを変数に格納できます。

read YEAR MONTH DAY < <(date -d '2013-09-06' '+%Y %m %d')
printf "%s\n" "$YEAR" "$MONTH" "$DAY"
于 2013-09-06T08:35:54.567 に答える