• cal 看历史
  • cal可以查看日历,不过对于1752年9月,却是个特殊的例子:

    root@localhost [~] cal 9 1752
       September 1752  
    Su Mo Tu We Th Fr Sa
           1  2 14 15 16
    17 18 19 20 21 22 23
    24 25 26 27 28 29 30

    1752年9月,大英帝国极其所属美洲殖民地的恺撒历法被格里高利教皇历法所取代。现行的公历就是格利戈里历法,这个历法的是1582年教皇格利戈里根据恺撒大帝引进的算法改进的。它采用的是闰年制也就是现行的制度,不过有一个需要注意的地方就是,这个历法并不是连续的,中间缺少了11天。1752年9月2日之后的那一天并不是1752年9月3日,而是1752年9月14日。也就是说,从1752年9月3日到1752年9月13日的11天并不存在。抹掉这11天是由英国议会做出的决定。我们知道,地球环绕太阳转动的周期是365.2422天,而早先人们所使用的儒略历中,因为每4年加进了1个闰日,即2月29日,所以平均下来,每一个儒略年为365.25天。可千万不要小看了这0.0078天(约11分14秒)的差别。一两年还无所谓,甚至十年二十年也过得去,可是几百年积累下来就非同小可了。事实上,在13世纪时,儒略年比实际的天象已经超出了8天,春分日竟然变成了3月13日,而天文学上规定应当是3月21日。当时杰出的思想家、科学家、哲学家罗吉尔·培根,特意于1263年致信罗马教皇乌尔班四世,敦促他们研究解决这个大问题(当时的制历权在教会)。可谁也没有想到,这个看似简单的问题却难倒了教廷,一直拖了三百多年,致使误差进一步扩大到10天。直到1582年,格里果里十三世教皇才同意了一位业余天文学家的方案,颁发了改儒略历为格里历的法令,其实,改变的实质主要有二:即在当年扣除多余的10天,具体说来说是把1582年10月4日(星期四)后面的那一天,作为10月15日星期五(本应是10月5日星期五);今后凡不能被400整除的世纪年,如1700年、1800年、1900年等不再作闰年,只有如1600年、2000年等那样可以被400除尽的年份才仍用闰年。这实际意味着在每400年中加了397个闰日,比原先少了整整3天,也说是说,在新的格里历中,一年长度平均是365.2425天,这与实际年长只差25.9秒,足可保证在二三千年内不出差错。
    具体可参考:1752年9月缺失的11天是怎么回事

  • 经典的小火车
  • linux最为经典的一个指令动画,即sl命令,输入它会在终端出现一个小火车,非常有趣。

    root@localhost [~] yum -y install sl
    root@localhost [~] sl

  • telnet看星球大战
  • root@localhost [~] telnet towel.blinkenlights.nl

  • rev反转
  • rev命令可以讲字符串进行反转,很有趣吧。

    root@localhost [~] rev
    Hello RanShy!
    !yhSnaR olleH
    你好么
    么好你
    上海自来水来自海上
    上海自来水来自海上
  • 字母的酷炫字体
  • 之前做服务器的ssh登陆欢迎画面,想用大一点的字体,banner指令可以很好地实现。

    root@localhost [~] banner ranshy

    ######      #     #     #   #####   #     #  #     #  
    #     #    # #    ##    #  #     #  #     #   #   #  
    #     #   #   #   # #   #  #        #     #    # #    
    ######   #     #  #  #  #   #####   #######     #    
    #   #    #######  #   # #        #  #     #     #    
    #    #   #     #  #    ##  #     #  #     #     #    
    #     #  #     #  #     #   #####   #     #     #
  • 因式分解
  • 如何快速判断一个数是否是素数,在linux下只需要一行命令即可搞定。factor允许输入任意数字,并计算出它的因式分解。

    root@localhost [~] factor
    65535
    65535: 3 5 17 257
    997701520
    997701520: 2 2 2 2 5 31 402299
  • 九九乘法表
  • root@localhost [~] for i in {1..9}; do for j in $(seq 1 $i); do echo -ne $i*$j=$((i*j))\\t;done; echo;done
    1*1=1
    2*1=2   2*2=4
    3*1=3   3*2=6   3*3=9
    4*1=4   4*2=8   4*3=12  4*4=16
    5*1=5   5*2=10  5*3=15  5*4=20  5*5=25
    6*1=6   6*2=12  6*3=18  6*4=24  6*5=30  6*6=36
    7*1=7   7*2=14  7*3=21  7*4=28  7*5=35  7*6=42  7*7=49
    8*1=8   8*2=16  8*3=24  8*4=32  8*5=40  8*6=48  8*7=56  8*8=64
    9*1=9   9*2=18  9*3=27  9*4=36  9*5=45  9*6=54  9*7=63  9*8=72  9*9=81