What does "rc" in .bashrc stand for?
Is it “resource configuration”, by any chance?
As is often the case with obscure terms, the Jargon File has an answer:
[Unix: from runcom files on the CTSS system 1962-63, via the startup script /etc/rc] Script file containing startup instructions for an application program (or an entire operating system), usually a text file containing commands of the sort that might have been invoked manually once the system was running but are to be executed automatically each time the system starts up.
Thus, it would seem that the “rc” part stands for “runcom”, which I believe can be expanded to “run commands”. In fact, this is exactly what the file contains, commands that bash should run.
Another expansion – run control
On Tue, 4 Nov 2003, goldwyn rodrigues wrote:
Does anyone know what RC (in bashrc/mailrc/… ) means or how it
originated? I mean, is it an acronym? If yes, what does it stand for?‘rc’ stands for ‘run control’ and is a a convention adopted from older
Unix systems.For more info see this:
http://www.catb.org/~esr/writings/taoup/html/ch10s03.html
Reading the sources others mentioned (http://www.catb.org/jargon/html/R/rc-file.html and http://www.catb.org/~esr/writings/taoup/html/ch10s03.html) it does seem like runcom is the origin of rc.
But I think it is used today for controlling or configuring how subsequent stuff will run. Saying that an rc file is a set of commands to run (runcom) is vague. It doesn’t imply when the commands will be run or anything about their purpose. “Control” and “configure” imply initialization or setup, so I think they’re more informative.
I think the answer is, “runcom” is the historical origin, but “run configuration” is what it really does.
It looks to me that while the origin definitely seems to be “runcom”, files that end with “rc” are used today in a more general way, i.e. as a “run configuration”, as several have already pointed out. One example I recently came across is “.vuerc”, a file used by the vue.js framework’s CLI to store user defined configuration presets for creating new projects and other settings for the runtime. “.vuerc” is a JSON file, i.e. NOT a script of runnable commands.