[原]好玩的Linux,关于时间cal命令
我們都知道,在Linux中,可以通過cal命令來查看日歷。Cal怎么用呢,我們可以man一下,可以看到如下結(jié)果:
?我們可以看到cal命令的基本用法如下:cal?[-smjy13]?[[[day]?month]?year]?
當(dāng)然如果不加指定參數(shù)的話,會顯示當(dāng)前的月份情況。
其常用參數(shù)如下:
-1??????Display?single?month?output.??(This?is?the?default.)
-3??????Display?prev/current/next?month?output.
-s??????Display?Sunday?as?the?first?day?of?the?week.
-m??????Display?Monday?as?the?first?day?of?the?week.
-j??????Display?Julian?dates?(days?one-based,?numbered?from?January?1).
-y??????Display?a?calendar?for?the?current?year.
-V??????Display?version?information?and?exit.
我對其逐個(gè)簡單解釋一下:
-1 ? 會把當(dāng)前單月顯示輸出(這個(gè)也是默認(rèn)值)
-3 會顯示3個(gè)月,分別是上一個(gè)月,本月,和下個(gè)月
-s 會把星期天作為每周的第一天顯示
-m ? 會把星期一作為每周的第一天顯示
-j 會顯示【天文學(xué)】儒略日(從公歷1月1日開始的時(shí)間,今天是一年里的第多少天)
-y 顯示當(dāng)前一整年的日歷
-V 會顯示當(dāng)前的版本信息
( 每個(gè)參數(shù)的使用方法,已經(jīng)進(jìn)行了說明,這里就不貼圖了。)
看了這些命令和解釋,其實(shí)很簡單吧。簡單試驗(yàn)一下,相信大家肯定就知道怎么用了。后面我補(bǔ)充一下這些參數(shù)配合使用的效果,比如:
1.cal?-jy? 可以將本年度的每一天從年初到年為表上序號,從1~365計(jì)數(shù)的形式顯示,如下:
????????????
2.cal?-3j? 可以將本月與上一月、下一月的順序計(jì)數(shù)儒略日時(shí)間,如下:
????????????
3.cal?5?2013 可以顯示2013年5月份的情況
???????????
4.當(dāng)然這里還有一個(gè)實(shí)際有用的小技巧:比如你想知道前年某一天(eg.2011-11-14)和今天相隔多少天,那么我們可以這么做:
1)通過?cal?-j?14?11?2011?可以得到2011-11-14在當(dāng)年的天文學(xué)日
???????????
2)通過cal看下今天的時(shí)間
3)然后很簡單就可以計(jì)算出來了,另外計(jì)算可以通過bc,此略。
5.說到這里,我們也可以再嘗試一下:cal?9?1752?,可以發(fā)現(xiàn)結(jié)果如下圖:
???????????
我們可以發(fā)現(xiàn),竟然9月2號過去就是9月14號。有人說這個(gè)是不是Linux cal的bug,其實(shí)不是的,那么中間的時(shí)間去哪里了呢?這里引出一個(gè)故事,大家看了就明白了:
1752年9月,大英帝國極其所屬美洲殖民地的愷撒歷法被格里高利教皇歷法所取代。由于愷撒歷法比格里高利歷法遲11天,因此9月2日當(dāng)天改歷法后,次日須為9月14日?,F(xiàn)行的公歷是格利戈里歷法,這個(gè)歷法的是1582年教皇格利戈里根據(jù)愷撒大帝引進(jìn)的算法改進(jìn)的。它采用的是閏年制也就是現(xiàn)行的制度,不過有一個(gè)需要注意的地方就是,這個(gè)歷法并不是連續(xù)的,中間缺少了11天。1752年9月2日之后的那一天并不是1752年9月3日,而是1752年9月14日。也就是說,從1752年9月3日到1752年9月13日的11天并不存在。抹掉這11天是由英國議會做出的決定。所以要計(jì)算某年每個(gè)月的天數(shù)的,除了要考慮是否是閏年以外,還要考慮1752年的9月。?(這段話出自:互動(dòng)百科)
呵呵,看來Linux還有很多奇妙的事情等著挖掘。
?
---2013年5月6日17:25:19
?
轉(zhuǎn)載于:https://www.cnblogs.com/haochuang/archive/2013/05/06/3063180.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的[原]好玩的Linux,关于时间cal命令的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 黑苹果声卡、显卡、网卡驱动教程
- 下一篇: stm32 usmart使用