ShellScriptで日付を扱う
Shellはググり駆動開発の筆頭なのですよ。
今回は日付を扱うためのTipsを。
下記のページが非常にわかりやすかった。
Notes
code:Sample
$ date '+%s' //Epoch Time
$ date '+%Y-%m-%d' //yyyy-mm-dd
$ date '+%F' //これもyyyy-mm-dd
前日を知りたいとき
$ date -v -1d '+%F' (Mac)
$ date '+%F' --date '1 day ago' (Linux)
- 困ったことにMacとLinuxではパラメータが違う。
コマンド実行日のEpoch Timeを計算したいとき。タイムゾーン考慮版。 (Macの場合)
code: Sample
todayStartedAt=date -j -f "%Y-%m-%d %H:%M:%S" "${yesterday} 00:00:00" "+%s"
echo $((${todayStartedAt}-32400))
-u のオプションでUTCで計算してくれるかと思ったらエラーになったので、愚直に9時間引いたけど、もっと良い方法はありそう。