Linux彩蛋:gimme gimme gimme
投稿 @ 2021.09.07 , 12:10 下午
投稿:Uing
如果你使用 Linux 系统,在大多数的发行版上,在半夜十二点半,打开终端 (Terminal),输入man, 你会看到奇怪的东西:
shell
gimme gimme gimme
这是一个接近十年的彩蛋,也是四年前才被一个开发者发现。
那这个彩蛋是什么意思呢?又是谁这么无聊大半夜一直输入man 去能发现这个彩蛋呢?
一切都从 StackExchange 的一个问题说起。
捷克的开发者Jaroslav Kucera 发现一个奇怪的现象,他的一个集成测试总是在半夜十二点半失败。这个测试一直在运行,而且不依赖外部网路,但总是在 12:30am 这个时间失败。追根溯源后他发现,是因为用了一个命令man -w去获取系统 man 文档的地址。man 是 POSIX 系统的文档帮助命令,是manual的缩写。(有些技术BBS论坛会看到RTFM这个缩写,表示 read the f**king manual,说明你的问题在文档清楚的写着,不要浪费大家的时间)
Jaroslav发现,在任何其他时间,man -w都给给出文档的目录地址,但在12:30am就会出现这个奇怪的信息:
shell
gimme gimme gimme
/usr/local/man:/usr/local/share/man:/usr/share/man
而Jaroslav 的测试脚本默认用第一行作为目录去解析,而ginme ginme ginme显然不是目录,自然就失败了。
很自然地 Jaroslav在 StackExchange 问了这个问题。当然,有问题自然有答案(?),很快 Marnanel 就自首了:
markdown
Dear @colmmacuait, I think that if you type "man" at 0001 hours it should print "gimme gimme gimme". #abba @marnanel - 3 November 2011
呃,是我的错,我做出的建议。Sorry
基本上Commit的信息就是整个故事。man 的维护者是我的好基友,六年前的时候我开玩笑地建议他如果有人大半夜之后用了man的命令,应该打印出 "gimme gimme gimme" .....
没想到他真的干了,而只有少数人发现了这秘密,我们也快忘记这个事情了,直到今天。
那这个“gimme gimme gimme”到底什么意思呢? Marnanel 回答说因为 Abba 乐队著名的 《gimme gimme gimme! (a man after midnight)》(半夜后给我找一个男人)
Marnanel 也没有想到这会导致任何问题,因为这真的只能是一个彩蛋(不影响关键功能的额外功能),而不是一个bug。
当然,你永远不知道你的用户会怎么用你的产品,例如在另一个事件,Wikimedia发现从印度突然每天向某个图片发来9千万的下载需求,最后发现印度一个开发者在开发App过程中用了Wikimedia的图片链接,只是下载图片但不显示,而这个App 因为中国抖音在印度被封禁而作为替代品流行起来,最后导致Wikimedia遭受无妄之灾。
最后,对着问题的修复就是:man -w不会触发这个彩蛋,其他情况才会。
如何触发这个彩蛋
shell
man
gimme gimme gimme
源代码
c
src/man.c-1167- if (first_arg == argc) {
src/man.c-1168- /*
http://twitter.com/#!/marnanel/status/132280557190119424 */
src/man.c-1169- time_t now = time (NULL);
src/man.c-1170- struct tm *localnow = localtime (&now);
src/man.c-1171- if (localnow &&
src/man.c-1172- localnow->tm_hour == 0 && localnow->tm_min == 30)
src/man.c:1173: fprintf (stderr, "gimme gimme gimmen");
commit
打赏
赞一个 (5)
PREV : 今日好价:巴黎水
NEXT : 国际货币基金组织贷款与离岸资金流动
[ 上 ] [ 下 ]
gz80 @ 2021-09-07 12:25:465018625
用开源项目就是这样,你永远不知道哪里埋了一颗雷,即使是善意的彩蛋,也会让你的程序产生莫名其妙的错误,而且事后想重现原场景却又很难重现出来。
[举报]OO [14] XX [11] 吐槽 [2]
nick @ 2021-09-07 12:48:415018653
ABBA永遠的神
[举报]OO [0] XX [0] 吐槽 [0]
ark12211 @ 2021-09-07 12:52:305018655
既然是开源的不会在源代码里看到吗,怎么这么久都没人发现……
[举报]OO [0] XX [2] 吐槽 [1]
电子狗 @ 2021-09-07 13:17:415018716
排版出了点小问题,没有解析出代码框,小编鸡腿要没了
[举报]OO [1] XX [0] 吐槽 [0]
卷卷 @ 2021-09-07 13:33:145018743
https://music.163.com/#/song?id=3880252
[举报]OO [0] XX [0] 吐槽 [0]
乔治.佛洛依德 @ 2021-09-07 13:39:495018750
@gz80: 有道理,最好还是把linux给某个公司独家垄断经营吧,这样才会最大程度为linux负责。
[举报]OO [1] XX [2] 吐槽 [0]
a @ 2021-09-07 14:00:305018767
apt -moo
[举报]OO [0] XX [0] 吐槽 [0]
[ 上 ] [ IMG ]
称呼:
邮箱:
猛击发送
Related Posts
牛人造喷气式两轮车欲破速度纪录
狂热星战粉丝自建钛战机
英国富翁古怪发明:让流浪者睡垃圾桶
[v] 如何拍摄出凝固的水流
偷听纽约:法国看起来就是挺小啊
世界上最奇葩的9个控诉
12岁萝莉用ipod touch智斗绑架犯
MS-DOS 30岁啦
(C) 煎蛋 - 地球上没有新鲜事
鄂ICP备11008023号-1 · 鄂公网安备42018502002747号
煎蛋举报入口 · 举报电话 13125131232 · 举报邮箱 jubao@jandan.com
网信办违法和不良信息举报中心 · 涉历史虚无主义有害信息举报专区
--
FROM 106.127.97.*