Date
如何找到每個月的第二天
如何在 HPUX 中獲取目前月份(例如 8 月 2 日)的第二天(日期)。
date -d
在 HPUX Unix 中不起作用。
使用 GNU 和 busybox 實現:
$ date -d '2020-08-02' "+%A" Sunday
使用 FreeBSD:
$ date -j -f "%d %m %Y" "02 08 2020" "+%A" Sunday
如果你想得到一年中所有月份的第二天,你可以使用這個 days-in-a-year.sh 腳本:
#!/usr/bin/env sh year=2021 month=1 while [ $month -le 12 ]; do # GNU and busybox date -d "$year-$month-02" "+%d %B %Y: %A" # FreeBSD # date -j -f "%d %m %Y" "02 $month $year" "+%d %B %Y: %A" month=$(( month + 1 )) done
輸出:
$ ./days-in-a-year.sh 02 January 2021: Saturday 02 February 2021: Tuesday 02 March 2021: Tuesday 02 April 2021: Friday 02 May 2021: Sunday 02 June 2021: Wednesday 02 July 2021: Friday 02 August 2021: Monday 02 September 2021: Thursday 02 October 2021: Saturday 02 November 2021: Tuesday 02 December 2021: Thursday
順便說一句,
cal
在 FreeBSD 和 Linux 上作為 util-linux 包的一部分提供了一個漂亮的實用程序,它可以在命令行中顯示日曆:$ cal August 2021 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