linux is not unix由来,一些奇怪的 unix 指令名字的由来(转)

一些奇怪的 unix 指令名字的由来(转)[@more@]一些奇怪的 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 □找固定的字串。"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" 是取自 "runcom", 来自麻省理工学院在 1965 年发展的 CTSS系统。相关文献曾记载这一段话: '具有从档案中取出一系列命令来执

行的功能;这称为 "run commands" 又称为 "runcom",而这种档案又称为一个 runcom (a runcom)。'

Brian Kernighan 与 Dennis Ritchie 告诉 Vicki Brown 说: "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" 一书里有更多这类的珍闻轶事。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10617542/viewspace-946463/,如需转载,请注明出处,否则将追究法律责任。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/533798.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python discuz_pythonDiscuz发帖器的实现

网络技术需要大家共同分享,不能闭门造车,下面是bj-dnsCom提示:首先要清楚discuz论坛发帖的流程,简单地说就是以下流程:进入登录页 ->登录 -> 进入版面 ->发帖 首先要清楚discuz论坛发帖的流程,简单地说就是以…

基于linux的业设计课题,基于linux下智能手机的设计与制作 毕业设计.doc

本科生毕业论文(设计)题 目: 基于linux下智能手机的设计与制作目录1. 绪论11.1 嵌入式系统的应用前景11.2linux操作系统21.2.1Linux介绍22.硬件、软件介绍32.1S3c2440知识32.1.1S3c2440系统结构介绍32.1.2arm实验仪介绍72.2 GPRS无线模组92.2.1 GPRS概述及工作原理9…

excel文件导入hive乱码_将excel中的数据导入hive

步骤一:将excel另存为txt文档(文本文件(制表符分割))假设名字为CompanyCode.txt步骤二,将该txt文件导入Linux指定目录中步骤三,转换编码格式,在指定目录下执行如下命令:piconv -f gb2312 -t UTF-8 CompanyCode.txt &g…

传统的6d位姿估计fangfa1_李飞飞团队最新论文:基于anchor关键点的类别级物体6D位姿跟踪...

点击上方“3D视觉工坊”,选择“星标”干货第一时间送达简介作者提出了一种基于RGB-D的深度学习方法6PACK,能够实时的跟踪已知类别物体。通过学习用少量的3D关键点来简洁地表示一个物体,基于这些关键点,通过关键点匹配来估计物体在…

c语言的程序结构语序,第3章 C语序结构.doc

第3章 C语序结构第三章 基本语句本章要求:1.表达式语句,空语句,复合语句2.数据的输入与输出,输入,输出函数的调用C语句概述C程序的执行部分是由语句组成的。 程序的功能也是由执行语句实现的。3.1 赋值语句赋值语句: 是由赋值表达式再加上分号构成的表达…

安卓system镜像分区_玩机爱好者想要的PT分区到底是什么?可以使现有的安卓系统更快!...

小编第一次看见PT分区这个词。就比较好奇他到底是什么神仙技术。今天,小编给大家科普一下,可能小编理解的也不是特别准确,请各位谅解!! 欢迎关注小编。各位玩机爱好者总是沉浸在各种ROM包、第三发Rec,以及各…

计算器软件C语言课程设计实验报告,c简单计算器实验报告_相关文章专题_写写帮文库...

时间:2019-05-15 12:55:15 作者:admin计算器实验报告班级: 07计本(1)班姓名: 王林学号: 20706031047指导老师: 韩静一、 需求分析(1)制作一个计算器界面工程,有数字运算符等键,输入表…

python求和1到100_python等差数列求和公式前 100 项的和实例

python等差数列求和公式前 100 项的和实例 最近跑去学了下python,一个很简单的题,结果发现数学公示忘了,在不用for循环的情况下居然有些懵,记录为下.. 题:等差数列可以定义为每一项与它的前一项的差等于一个常数,可以用…

android mqtt详解_Android mqtt入门 Android studio(转)

Android mqtt入门 Android studio2018年04月09日 14:02:30 hbw020 阅读数:1564分享 mqtt简单使用介绍:1、as创建工程2、官网下载mqtt支持包放入lib文件,点击打开链接,https://repo.eclipse.org/content/repositories/paho-release…

jupyter kernel_新乡联通案例分享:Jupyter开发环境配置的常用技巧

Jupyter开发环境配置的常用技巧新乡联通网管中心 邢少华Python开发环境中,大部分人使用的是Jupyter,在Jupyter中有几个令人困扰的问题:1. Jupyter的默认打开目录如何修改2. Jupyter默认使用的浏览器如何修改3. 好用的Jupyter插件如何安装4.…

东北大学c语言及程序设计,东大20秋学期《C语言及程序设计》在线平时作业1参考...

20秋学期《C语言及程序设计》在线平时作业1( j- V: Z* f0 i V& k% b, S. ?/ _8 ~1.[单选题] 在C语言中,引用数组元素时,其数组下标的数据类型允许是()。2 6 g, p1 C$ P; B$ _( J附件是答案,核对题目下载4 m1 F; D: R* q; AA.整型常量- _…

mac安装ipython_Mac下安装ipython与jupyter

IPython从Python发展而来,更倾向于科学计算。互联网数据分析更喜欢用。首先切换root用户:sudo su -pip3自动安装ipythonMacBook-Pro:~ root# pip3 install ipython自动安装完成后建立软连接,方便使用MacBook-Pro:bin root# ln -s /Library/Fr…

二叉树 中序遍历 python_LeetCode 105 树 从前序与中序遍历序列构造二叉树(Medium)

17(105) 从前序与中序遍历序列构造二叉树(Medium)描述根据一棵树的前序遍历与中序遍历构造二叉树。注意: 你可以假设树中没有重复的元素。示例例如,给出前序遍历 preorder [3,9,20,15,7] 中序遍历 inorder [9,3,15,20,7]返回如下的二叉树:3/ 9 20/ 1…

c语言删除双向链表重复元素,求一个双向链表的建立,插入删除的c语言程序完整版的,借鉴一下思想,再多说一下就是能运行的那种...

最佳答案//链表的操作编辑//线性表的双向链表存储结构typedef struct DuLNode{ElemType data;struct DuLNode *prior,*next;}DuLNode,*DuLinkList;////带头结点的双向循环链表的基本操作void InitList(DuLinkList L){ /* 产生空的双向循环链表L */L(DuLinkList)malloc(sizeof(D…

华为p10和p10plus区别_华为p10和p10plus哪个好 华为p10与p10plus区别对比【图文】

华为p10与p10plus是华为在2017年的首发旗舰手机,作为颜值与配置都很亮眼的华为p10与p10plus自然成了大众的焦点,当然也就避不可免的用来对比。究竟华为p10和p10plus哪个好?下面小编就来给大家讲讲华为p10与p10plus的区别对比。华为P10与P10 Plus区别对比…

python数学圆周率_Python编程超简单方法算圆周率

我们都知道,圆周率是3.1415926也就是π,但你有没有想过,圆周率是怎么算出来的呢? 这个是德国数学家莱布尼兹发明的算圆周率的方法,公式为:π4(1-1/31/51/71/9-1/11……),其中,分母每…

计算payload长度c语言,C语言0长度数组(可变数组/柔性数组)详解

1 零长度数组概念众所周知, GNU/GCC 在标准的 C/C 基础上做了有实用性的扩展, 零长度数组(Arrays of Length Zero) 就是其中一个知名的扩展.多数情况下, 其应用在变长数组中, 其定义如下struct Packet{ int state; int len; char cData[0]; //这里的0长结构体就为变长结构体提供…

iphone主屏幕动态壁纸_iPhone8怎么设置动态壁纸?iPhone8动态壁纸设置教程

iPhone8怎么设置动态壁纸?朋友们平时想把一些拍摄的动态图片设置iPhone8壁纸,该怎么设置呢?估计有 不少朋友还不知道如何设置, 在这里我就来为大家介绍一下iPhone8设置动态壁纸的教程,一起来看一看吧!iPhone8动态壁纸设置教程首先打开iPhon…

python封装介绍_谈python3的封装

这章给大家介绍,如何封装一个简单的python库首先创建一个以下型式的文件结构rootFile/setup.pyexample_package/__init__.pyexample_module.pyexample_package2/__init__.pyexample_module.py其中的两个__init__.py可以是一个空文件,但是它是导入package…

go语言调用c 的头文件 so,golang 学习(10): 使用go语言调用c语言的so动态库-Go语言中文社区...

一、前言最近在学习go,因为需要调用c语言打包成的so动态库里面的方法,避免自己再去造轮子,所以想直接使用golang调用so,但是参考了其他博客大佬写的,我每一步原封不动的写下来,结果都是一堆错误&#xff0c…