Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- date -d @$(( $(date -d $(date -d @$(( $(date +%s) + 2678400 )) +%Y%m01) +%s) - 604800 )) +%d
- $ cal | awk '/^ *[0-9]/ { d=$1 } END { print d }'
- 25
- $ cal
- December 2016
- Su Mo Tu We Th Fr Sa
- 1 2 3
- 4 5 6 7 8 9 10
- 11 12 13 14 15 16 17
- 18 19 20 21 22 23 24
- 25 26 27 28 29 30 31
- #!/bin/bash
- # print last Sundays for 2016 and 2017
- for y in {2016..2017}
- do
- for m in {1..12}
- do
- first_day_of_month=$y/$m/1
- days_in_month=$(date +%d -d "$first_day_of_month month day ago")
- day_of_week_of_last_day=$(date +%w -d "$first_day_of_month month day ago")
- last_sunday=$(date -d "$first_day_of_month $days_in_month day $[1+$day_of_week_of_last_day] day ago")
- echo $last_sunday
- done
- echo
- done
- # print last Sunday for current month
- first_day_of_month=$(date +%m/1)
- days_in_month=$(date +%d -d "$first_day_of_month month day ago")
- day_of_week_of_last_day=$(date +%w -d "$first_day_of_month month day ago")
- last_sunday=$(date -d "$first_day_of_month $days_in_month day $[1+$day_of_week_of_last_day] day ago")
- echo $last_sunday
- Sun Jan 31 00:00:00 GMT 2016
- Sun Feb 28 00:00:00 GMT 2016
- Sun Mar 27 00:00:00 GMT 2016
- Sun Apr 24 00:00:00 BST 2016
- Sun May 29 00:00:00 BST 2016
- Sun Jun 26 00:00:00 BST 2016
- Sun Jul 31 00:00:00 BST 2016
- Sun Aug 28 00:00:00 BST 2016
- Sun Sep 25 00:00:00 BST 2016
- Sun Oct 30 00:00:00 BST 2016
- Sun Nov 27 00:00:00 GMT 2016
- Sun Dec 25 00:00:00 GMT 2016
- Sun Jan 29 00:00:00 GMT 2017
- Sun Feb 26 00:00:00 GMT 2017
- Sun Mar 26 00:00:00 GMT 2017
- Sun Apr 30 00:00:00 BST 2017
- Sun May 28 00:00:00 BST 2017
- Sun Jun 25 00:00:00 BST 2017
- Sun Jul 30 00:00:00 BST 2017
- Sun Aug 27 00:00:00 BST 2017
- Sun Sep 24 00:00:00 BST 2017
- Sun Oct 29 00:00:00 BST 2017
- Sun Nov 26 00:00:00 GMT 2017
- Sun Dec 31 00:00:00 GMT 2017
- Sun Dec 25 00:00:00 GMT 2016
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement