|
![]() | 作者: group [group]
![]() |
登录 |
一些奇怪的 unix 指令名字的由来 (UNIX) awk = "Aho Weinberger and Kernighan" 这个语言以作者 Al Aho, Peter Weinberger 和 Brian Kernighan 的 姓来命名。 grep = "Global Regular Expression Print" grep 源自 ed。用来打印所有符合某 pattern 的指令 g/re/p "re" 代表 regular expression fgrep = "Fixed GREP". fgrep �o找固定的字符串。"f" 不是代表 "fast" - 事实上, "fgrep foobar *.c" 通常比 "egrep foobar *.c" 来得慢(有点意外吧, 不信 的话, 自己试试喽)。 尽管如此,Fgrep 仍然有可取之处,在档案中搜寻字符串的时候,Fgrep 能处理的字符串数目较 egrep 多。 egrep = "Extended GREP" egrep 用比 grep 更 fancy 的 regular rexpression。许多人只用 egrep, 因为它用的 algorithm 比 grep 或 fgrep 用的要好一些, 而且通常是三个 程序中最快的。 cat = "CATenate" catenate 是一个满暧昧的字,在这里的意思是"把它连成一串", 这就是 "cat" 这个指令对一个或多个档案所做的处理。 请不要跟 C/A/T 混淆了,C/A/T 是指计算机辅助排版系统(Computer Aided Typesetter)。 gecos = "General Electric Comprehensive Operating Supervisor" 不过,通用电器 (GE) 的大型系统部门卖给 Honeywell 的后, Honeywell 就把 GECOS 的 E 拿掉了。 目前 Unix 的密码文件里面仍保有 "pw_gecos" 这个字段。这个名字是 从古早的年代沿用过来的。 Dennis Ritchie 曾经说过: "有时候我们会把印表输出或整批工作丢到 GCOS 机器。密码文件里 面的 gcos 字段是用来隐藏 $IDENT 卡片上的信息,这样做不够优雅"。 nroff = "New ROFF" troff = "Typesetter new ROFF" 这些字都是从"roff"衍生的, roff 是重写 Multics 上的 runoff 程序得来 的 (runoff 的意思就是"印出文件")。 tee = T 这是管线工人的术语,代表 T 型的管线分叉器。 bss = "Block Started by Symbol" (由符号启始的区块) Dennis Ritchie 曾说过: 这个缩写也许有其它说法,但事实上我们采用这个缩写的本意是 "Block Started by Symbol"。它是 FAP 上的伪指令,FAP (Fortran Assembly [-er?] Program) 是指 IBM 704-709-7090-7094 这种机型的组译器。这个指令可定义自己的标号,并且预留一定数目 的字组空间。还有另一个伪指令 BES,是 "Block Ended by Symbol",跟 BSS 指令几乎一样,不同点在于标号是定义在预留字组 空间尾端的地址 + 1 的地方。在这些机器上,Fortran 的数组是以反 方向储存,而且数组的索引是从 1 算起。 这种用法是合理的,因为这跟 UNIX 上标准的程序加载器一样,程序 码当中并非真的放入这一整块预留空间,而是先用一个数目表示,在 加载时才真的把所需的预留空间定出来。 biff = "BIFF" 这个指令是用来设定当您有新邮件进来时,是否要通知您。这是柏克 莱大学校园内一只狗的名字。 我可以确定这个名称的起源,如果您有兴趣的话,Biff 是 Heidi Stettner 养的宠物,想当年 Heidi (还有我,跟 Bill Joy) 都还是 UCB 的研究生时,早期的 BSD 版本还在发展中。Biff 受到流连于 Evans Halls 这些人的喜爱,也因为它会对前来的邮差吠叫而闻名;因 此就以 biff 当作指令的名称。 (这是卡内基美浓大学的 Eric Cooper 证实的) rc (像是 ".cshrc" 或 "/etc/rc" 中的 rc 这两个字母) = "RunCom" "rc" 源自麻省理工学院在 1965 年发展的 CTSS系统中的 "runcom"。 Brian Kernighan 与 Dennis Ritchie 告诉 Vicki Brown 说: 相关文献写着这么一段话: ‘CTSS 具有从档案中取出一系列命令 来执行的功能;这功能称为 "run commands" 又称为 "runcom", 而这种档案称为一个 runcom (a runcom)。‘ Unix 中的 "rc" 就是这种用法的残迹。 此外 "rc" 也是Plan 9 操作系统 shell 的名字。 Perl = "Practical Extraction and Report Language" Perl = "Pathologically Eclectic Rubbish Lister" Perl是 Larry Wall 所发展的一种相当受欢迎的语言, Perl 在处文字, process,与档案时非常便利,可以说是兼得 shell 与 C 之长。想知道 更多关于Perl 的讯息,请看 Usenet newsgroup comp.lang.perl。 Don Libes 的 "Life with Unix" 一书里有更多这类的珍闻轶事。 |
地主 发表时间: 05/10 14:14 |
![]() | 回复: xiaojun [xiaojun] ![]() |
登录 |
呵呵,长见识了~~~~~~~ |
B1层 发表时间: 05/15 15:33 |
|
20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon
粤ICP备05087286号