首页  >  文章  >  运维  >  linux rc是什么意思

linux rc是什么意思

藏色散人
藏色散人原创
2023-03-16 09:33:122568浏览

linux rc是runcom的缩写,也是“.cshrc”或“/etc/rc”中出现的rc;rc来源于runcom,首次出现于1965年的MIT CTSS系统;在某些场景中,会执行被存储在文件中的多条命令commands,我们称之为runcom,即运行命令run commands的简称。

linux rc是什么意思

本教程操作环境:linux5.9.8系统、Dell G3电脑。

linux rc是什么意思?

Linux rc 含义全称

这要从Unix系统的史前时代(1961-1969)开始讲起,在一开始由MIT为主力开发过一个兼容分时系统(Compatible Time-Sharing System),简称CTSS。
(这个CTSS他功能虽然比不了后来的Unix系统,但是人家辈分大,年代早。)
CTSS系统中有一个关于命令脚本的特性叫做runcom
为了致敬这个古早版本Unix系统——CTSS的runcom特性,后来的Unix系统中就用rc作为操作系统的启动文件名。

Tips
程序语言里的Date是从1970-01-01开始的,
a0797d8703ce2c7276b2fcd9b6c9451.jpg

而前面提到的Unix的史前时代(1961-1969)还在1970年之前。
也可以侧面感受到CTSS这个系统的“辈分”之大。

含义

rc = RunCom

“rc” 是取自 “runcom”, 来自麻省理工学院在 1965 年发展的 CTSS系统。相关文献曾记载这一段话:“具有从档案中取出一系列命令来执行的功能;这称为 run commands 又称为 “runcom”,而这种档案又称为一个 runcom (a runcom)。”

实例

  • .bashrc bash的运行命令
  • .vimrc vim的运行命令
  • .npmrc npm的运行命令

Linux中,文件名以.开头表示为隐藏文件。

c8cff2c77f6372c88aaa826c0f71407.jpg

leung@wuyujin ~ % ls -al | grep rc$
-rw-------   1 leung  staff      33  5 13 20:34 .npmrc
-rw-r--r--   1 leung  staff     116  5 13 21:20 .yarnrc
-rw-r--r--   1 leung  staff      55  6  2 20:00 .zshrc

参考 What does rc mean in bashr, zshrc, vimrc etc?

What does rc mean in bashr, zshrc, vimrc etc?
9eac029e8bbee0c238bb914322caae4.jpg

翻译如下:
对于rc所代表的意思,你可能会看到以下几种:

  • run commands(运行命令)
  • resource control(资源控制)
  • run control(运行控制)
  • runtime configuration(运行时配置)

在读过这份文档之后,我更愿意认为rcruncom的缩写。

rc = RunCom 就是.cshrc/etc/rc中出现的那个rc
rc来源于runcom,首次出现于1965年的MIT CTSS系统。

在某些场景中,(我们)会执行被存储在文件中的多条命令commands,我们称之为runcom即运行命令run commands的简称。
另外,这个用于存储命令的文件被称作:a runcom
Unix文件命名中的rc就是来自于这样的老典故。
— Brian Kernighan & Dennis Ritchie, as told to Vicki Brown

Also ESR states that in Run-Control Files:
当然,你也可以在 Run-Control文件中找到证据:
rc后缀一直往前追溯,会发现其实它在Unix的爷爷辈老系统——CTSS里就有了。
而在CTSS这个古早的系统中有一个命令脚本的特性叫做:runcom
于是早期Unix就开始使用rc作为操作系统启动脚本的文件名,以此来追忆/致敬 CTSS runcom。

所以我认为:rcruncom的缩写。

ef7ed0dd643f8920e7fa3d6599e37ba.jpg

CTSS(Compatible Time-Sharing System)兼容分时系统

Unix系统的背景
1961-1969:史前时代
CTSS(Compatible Time-Sharing System,兼容分时系统),以MIT为首的开发小组,小而简单的实验室原型。
Multics(Multiplexed Information and Computing System,多路信息与计算系统),庞大而负责,不堪重负。
Unics(Uniplexed information and Computing System,单路信息与计算系统),返璞归真,走上正道。
1969-1971:创世纪
……

参考 Unix - Frequently Asked Questions (1/7) [Frequent posting]Section - What does {some strange unix command name} stand for

1.3)  What does {some strange unix command name} stand for?

      awk = "Aho Weinberger and Kernighan"

        This language was named by its authors, Al Aho, Peter
        Weinberger and Brian Kernighan.

      grep = "Global Regular Expression Print"

        grep comes from the ed command to print all lines matching a
        certain pattern

                    g/re/p

        where "re" is a "regular expression".

      fgrep = "Fixed GREP".

        fgrep searches for fixed strings only.  The "f" does not stand
        for "fast" - in fact, "fgrep foobar *.c" is usually slower than
        "egrep foobar *.c"  (Yes, this is kind of surprising. Try it.)

        Fgrep still has its uses though, and may be useful when searching
        a file for a larger number of strings than egrep can handle.

      egrep = "Extended GREP"

        egrep uses fancier regular expressions than grep.  Many people
        use egrep all the time, since it has some more sophisticated
        internal algorithms than grep or fgrep, and is usually the
        fastest of the three programs.

      cat = "CATenate"

        catenate is an obscure word meaning "to connect in a series",
        which is what the "cat" command does to one or more files.  Not
        to be confused with C/A/T, the Computer Aided Typesetter.

      gecos = "General Electric Comprehensive Operating Supervisor"
        
        When GE's large systems division was sold to Honeywell,
        Honeywell dropped the "E" from "GECOS".

        Unix's password file has a "pw_gecos" field.  The name is a
        real holdover from the early days.  Dennis Ritchie has reported:

            "Sometimes we sent printer output or batch jobs
             to the GCOS machine.  The gcos field in the password file
             was a place to stash the information for the $IDENT card.
             Not elegant."

      nroff = "New ROFF"
      troff = "Typesetter new ROFF"
        
        These are descendants of "roff", which was a re-implementation
        of the Multics "runoff" program (a program that you'd use to
        "run off" a good copy of a document).

      tee       = T

        From plumbing terminology for a T-shaped pipe splitter.

      bss = "Block Started by Symbol"
        
        Dennis Ritchie says:

            Actually the acronym (in the sense we took it up; it may
            have other credible etymologies) is "Block Started by
            Symbol." It was a pseudo-op in FAP (Fortran Assembly [-er?]
            Program), an assembler for the IBM 704-709-7090-7094
            machines.  It defined its label and set aside space for a
            given number of words.  There was another pseudo-op, BES,
            "Block Ended by Symbol" that did the same except that the
            label was defined by the last assigned word + 1.  (On these
            machines Fortran arrays were stored backwards in storage
            and were 1-origin.)

            The usage is reasonably appropriate, because just as with
            standard Unix loaders, the space assigned didn't have to be
            punched literally into the object deck but was represented
            by a count somewhere.

      biff = "BIFF"

        This command, which turns on asynchronous mail notification,
        was actually named after a dog at Berkeley.

            I can confirm the origin of biff, if you're interested.
            Biff was Heidi Stettner's dog, back when Heidi (and I, and
            Bill Joy) were all grad students at U.C. Berkeley and the
            early versions of BSD were being developed.   Biff was
            popular among the residents of Evans Hall, and was known
            for barking at the mailman, hence the name of the command.

        Confirmation courtesy of Eric Cooper, Carnegie Mellon University

      rc (as in ".cshrc" or "/etc/rc") = "RunCom"

        "rc" derives from "runcom", from the MIT CTSS system, ca. 1965.

            'There was a facility that would execute a bunch of
            commands stored in a file; it was called "runcom" for "run
            commands", and the file began to be called "a runcom."

            "rc" in Unix is a fossil from that usage.'
        
        Brian Kernighan & Dennis Ritchie, as told to Vicki Brown

        "rc" is also the name of the shell from the new Plan 9
        operating system.

      Perl = "Practical Extraction and Report Language"
      Perl = "Pathologically Eclectic Rubbish Lister"

        The Perl language is Larry Wall's highly popular
        freely-available completely portable text, process, and file
        manipulation tool that bridges the gap between shell and C
        programming (or between doing it on the command line and
        pulling your hair out).  For further information, see the
        Usenet newsgroup comp.lang.perl.misc.

      Don Libes' book "Life with Unix" contains lots more of these
      tidbits.

相关推荐:《Linux视频教程

以上是linux rc是什么意思的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn