我想運行一個bash腳本,每天運行並檢查當前日期以查看它是否是第二個到最後一天的月份,如果是確定的事情。Bash腳本,獲取本月的最後一天
2
A
回答
2
使用GNU日期
today=$(date +%Y-%m-%d)
next_to_last=$(date -d "$(date +%Y-%m-01) + 1 month - 2 days" +%Y-%m-%d)
if [[ $today == $next_to_last ]]; then
echo "it is the 2nd last day of the month"
fi
「內部」日期調用返回當前的年份和月份,我們硬編碼「01」爲天=> 這個月的第一天。我們增加1個月,然後減去2天。
1
你可以用這個調用做到這一點:
date --date="$(date --date "next month" +'%Y-%m-01') -2 days"
讓我們分析部分:
- 外層:
date --date="$MAGIC -2 days"
如果不是$MAGIC
我們可以得到下個月,GNU的第一天日期功能將幫助我們:與date --date="2016-08-01 -2 days"
- 一起嘗試它內層:而不是
$MAGIC
我們使用由返回的內容:這給我們的第一下個月,再次使用GNU日期選項 - ,你既可以使用兩行或使用命令替換與
$(...)
0
如果沒有GNU和你約會可以這樣做:
set -- $(date "+%d %m %Y")
cal ${2} ${3} | nawk '{NF&&n=($NF-2)};END{exit(n==d)?0:1}' d=${1}
((!$?)) && echo "do certain things"
相關問題
- 1. 本月的最後一天?
- 2. 設置文本框自動獲取該月的最後一天
- 3. 本月最後一天的iCAL事件
- 4. 在Go/Golang中獲取本月的第一天和最後一天?
- 5. 如何在C#中獲得本月的最後一天?
- 6. 從python的年份月份獲取月份的最後一天
- 7. 使用T-sql獲取本月的最後一個星期一
- 8. NSDate - 獲取本月的幾天(不是一年的幾天)?
- 9. 如何在Impala中獲取前一個月的最後一天?
- 10. 如何從本月的第一天到昨天獲取數據
- 11. 如何在excel中獲取本月的最後一個日期
- 12. MySQL的CURDATE() - yesteday是本月的最後一天
- 13. 獲取上個月的第一天和最後一天的日期在C#
- 14. JavaScript:獲取格式爲YYYY.MM.DD的月份的第一天和最後一天
- 15. 如何在YearMonth對象中獲取月份的最後一天?
- 16. 在HIVE查詢中獲取上個月的最後一天
- 17. VBA - 訪問 - 獲取每月的最後一天
- 18. 如何從YearMonth日期獲取月份的最後一天?
- 19. 在SQL中獲取每月的最後一天
- 20. 如何使用javascript獲取當月的最後一天?
- 21. 如何用Perl的DateTime得到本月的第一天和最後一天?
- 22. PHP - MYSQL:每月最後12個月的第一天到最後一天
- 23. 如何在本月的最後一天使用SQL Reporting Services
- 24. 本年度1月最後一天的表達式
- 25. 本月的最後一天,在SQLPLUS中加上扭曲
- 26. jQuery - datepicker重複本月的最後一天
- 27. 如何獲取給定月份的第一天和最後一天
- 28. 基於組合框獲取月份的第一天和最後一天
- 29. 獲取所選月份和年份的第一天和最後一天?
- 30. 本月的第一天
謝謝你這樣做的伎倆! –