LoginSignup
13
16

More than 5 years have passed since last update.

Bash で月初と月末を表示する方法

Posted at

GNU date でのみ動作する。macOS 等にインストールされている BSD date では動作しない。

# 今月初め
$ echo $(date +"%Y%m%d" -d"`date +"%Y%m01"`")
20170901

# 先月初め
$ echo $(date +"%Y%m%d" -d"`date +"%Y%m01"` 1 month ago")
20170801

# 来月初め
$ echo $(date +"%Y%m%d" -d"`date +"%Y%m01"` + 1 month")
20171001

# 今月終わり
$ echo $(date +"%Y%m%d" -d"`date +"%Y%m01"` 1 days ago + 1 month")
20170930

# 先月終わり
$ echo $(date +"%Y%m%d" -d"`date +"%Y%m01"` 1 days ago")
20170831

# 来月終わり
$ echo $(date +"%Y%m%d" -d"`date +"%Y%m01"` 1 days ago + 2 month")
20171031

ちなみに月初めではなく月の2日目を表示するためのコマンドは以下の通りである。

# 今月2日目
$ echo $(date +"%Y%m%d" -d"`date +"%Y%m02"`")
20170902
13
16
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
16