你的 home 目录下藏著很多隐藏档案。如果你在执行 macOS 或者主流的 Linux 发行版的话,你就会在靠近隐藏档案列表的上方看见一个名为 .bashrc 的档案。那么什么是 .bashrc,编辑 .bashrc 又有什么用呢?

finder-find-bashrc
如果你执行一个基于 Unix 或者类 Unix 的操作系统,bash 很有可能是作为预设终端被安装的。虽然存在很多不同的 shell,bash 却是最常见或许也是最主流的。如果你不明白那意味著什么,bash 是一个能解释你输入进终端程式的东西,并且基于你的输入来执行命令。它在一定程度上支援使用指令码来定制功能,这时候就要用到 .bashrc 了。
为了载入你的配置,bash 在每次启动时都会载入 .bashrc 档案的内容。每个使用者的 home 目录都有这个 shell 指令码。它用来储存并载入你的终端配置和环境变数。
终端配置可以包含很多不同的东西。最常见的,.bashrc 档案包含使用者想要用的别名。别名允许使用者通过更短的名字或替代的名字来指向命令,对于经常在终端下工作的人来说这可是一个省时利器。

terminal-edit-bashrc-1
你可以在任何终端文字编辑器上编辑 .bashrc 。在接下来的例子中我们将使用 nano 。
要使用 nano 来编辑 .bashrc,在终端中呼叫以下命令:

nano ~/.bashrc

如果你之前从没有编辑过 .bashrc 的话,你也许会发现它是空的。这没关系!如果不是的话,你可以随意在任一行新增你的配置。
你对 bashrc 所做的任何修改将在下一次启动终端时生效。如果你想立刻生效的话,执行下面的命令:

source ~/.bashrc

你可以新增到任何 .bashrc 的位置,随意使用命令(通过 #)来组织你的程式码。
编辑 .bashrc 需要遵循 bash 指令码格式。如果你不知道如何用 bash 编写指令码的话,有很多线上资料可供查阅。这是一本相当全面的介绍指南,包含一些我们没能在这里提及的 bashrc 的方面。
相关: 如何在 Linux 启动时以 root 许可权执行 bash 指令码
有一些有用的小技巧能使你的终端体验将更高效,也更使用者友好。
为什么我要编辑 bashrc ?
Bash 提示符
bash 提示符允许你自定义你的终端,并让它在你执行命令时显示提示。自定义的 bash 提示符著实能提高你在终端的工作效率。
看看这些即有用又有趣的 bash 提示符,你可以把它们新增到你的 .bashrc 里。
别名

terminal-edit-bashrc-3
别名允许你使用简写的程式码来执行你想要的某种格式的某个命令。让我们用 ls 命令来举个例子吧。 ls 命令预设显示你目录里的内容。这挺有用的,不过显示目录的更多资讯,或者显示目录下的隐藏内容,往往更加有用。因此,有个常见的别名就是 ll,用来执行 ls -lha 或者其他类似的命令。这样就能显示档案的大部分资讯,找出隐藏的档案,并能以 “能被人类阅读” 的单位显示档案大小,而不是用 “块” 作为单位。
你需要按照下面这样的格式书写别名:

alias ll = “ls -lha”

左边输入你想设定的别名,右边引号里是要执行的命令。你可以用这种方法来建立命令的短版本,防止出现常见的拼写错误,或者让一个命令总是带上你想要的引数来执行。你也可以用你喜欢的缩写来规避讨厌或容易忘记的语法。这是一些常见的别名的用法,你可以新增到你的 .bashrc 里。
函式

terminal-edit-bashrc-2
除了缩短命令名,你也可以用 bash 函式组合多个命令到一个操作。这些命令可以很复杂,但是它们大多遵循这种语法:

function_name () {
command_1
command_2
}

下面的命令组合了 mkdir 和 cd 命令。输入 md folder_name 可以在你的工作目录建立一个名为 “folder_name” 的目录并立刻导航进入。

md () {
mkdir -p $1
cd $1
}

如你所见,函式中的 $1 代表第一个引数,就是你在函式名后紧跟著输入的文字。