50% off 所有套餐限时优惠,起价 $2.48/mo
13 min left
Servers & OS

什么是 Linux bashrc 以及如何使用它?【成为 Linux 高手的完整指南】

Allen By Allen 13 min read Updated Sep 20, 2023
Linux bashrc 指南

你是 Linux 用户,想使用 Linux 的 bashrc 和命令行工具?bashrc 是 Linux 操作系统主目录中的隐藏文件,那 bash_profile 呢?你知道 Linux 的 bashrc 和 bash_profile 的区别吗?Linux 默认隐藏敏感文件,bashrc 就是其中之一,位于 Linux 操作系统的主目录。

与其他终端定制方法相比,Bashrc 是一个低风险且直接的解决方案,你可以在遇到问题时删除并重新开始。本文将介绍 Linux 中 bash 的基础知识,并讨论 .bashrc 文件是什么以及如何使用它们。在深入了解之前,我们先讨论一些基本定义,为你打好 bashrc 的基础。

What is A Shell?

what is a shell

A shell 是与操作系统交互的用户界面术语。shell 是命令解释器(在某些系统中),接受用户命令并运行它们以执行操作。实际上,Linux/Unix shell 是运行脚本、命令或程序的环境。有两种主要的 shell 类型:

  • C Shell - 如果你使用这种类型的 shell,% 字符是默认提示符。
  • Bourne Shell – 这种 shell 的主要提示符是 $ 字符。

本文将使用 Bourne Shell。这种 shell 具有以下子类别:

  • Bourne Shell (sh)
  • Bourne Again Shell (bash)
  • Korn Shell (KSH)
  • POSIX Shell (sh)

Bourne Shell 是首个出现的 shell UNIX,这就是为什么它被称为 shell。如前所述,bash 是 Linux 最常见的 shell 类型,适合在不同 Linux 版本上编写脚本。既然已了解什么是 shell,现在让我们讨论 .bashrc 文件及其使用方法。

linux-vps Linux 主机服务简化版

想要更好的方式来托管网站和网络应用?正在开发新项目?或者只是不喜欢 Windows?这就是我们提供 Linux VPS 的原因。

获取你的 Linux VPS

Bashrc 文件是什么以及如何使用?

.bashrc 文件会在用户以交互模式打开新 shell 时执行。换句话说,.bashrc 文件是用于初始化 shell 会话的脚本。使用 .bashrc 文件可以将你输入的所有命令都放在其中。每次需要重新初始化 .bashrc 文件时,可以按 Ctrl+Alt+T 或打开新的终端标签页来完成,这样操作会更便捷。

Bash 在每次启动时都会运行 .bashrc 文件的内容来加载你的偏好设置。你可以在用户的主目录中找到这个脚本文件。该文件的主要功能是加载终端偏好设置和环境变量并保存它们。因此,使用 bashrc 命令的第一步(通过 Ctrl+Alt+T)是打开一个新的终端窗口,执行结果将返回以下文件:

  1. /etc/skel/.bashrc 在系统中创建新用户时,/etc/skel/.bashrc 是每个用户的默认 bashrc 文件。
  2. /home/Ali/.bashrc 当名为 Ali 的用户打开 shell 时,使用的是这个文件。
  3. /root/.bashrc 当 root 用户打开 shell 时,使用的是 root 文件(/root/.bashrc) will utilize.

Linux 中的 Bashrc 文件在哪里?

如前所述,bashrc 的位置在你的主目录中。当 bash shell 或 bash 脚本被初始化时,它会读取并执行该文件。执行 bashrc 文件会发生以下情况之一:

  • 当你登录时,
  • 当你运行某些命令(bash 脚本)时,
  • 当复制错误文件或输出时,
  • 当你运行计算作业时,
  • 在作业结束时。

Also Read: 如何在 Windows 10 上安装 Linux bash?

通过对 shell 和 bashrc 文件的简要介绍,你现在可能会问自己,我可以用 Linux bashrc 做什么?

Linux Bashrc 有什么用途?

bashrc Linux 提供的核心功能是为设置变量、别名、函数和定义其他设置提供恰当的空间。除了 bashrc 文件的这个主要用途外,它还具有多个显著优势,可以帮助你提高终端体验的友好性和效率。我们将在这里探讨其中的一些优势。你也可以在我们的其他文章中了解更多关于 Bash if Statement 的用例和变体!

用例:Bash 提示符

可自定义的 bash 提示符读取配置文件来确定其行为,使你在终端上的工作更加高效和富有成效。Bash 提示符允许你个性化你的终端。它还可以让你在运行命令时显示提示符。以下是你可以执行的一些任务示例:

  1. Linux Bashrc:改变 bash 命令的颜色

如果要改变 shell 提示符的颜色,先备份当前的 .bashrc 文件。用下面的命令将 .bashrc 复制到临时目录:

cp ~/.bashrc /tmp

然后打开你的 .bashrc 文件,添加新颜色的配置:

nano ~/.bashrc
LS_COLORS=$LS_COLORS:'di=0;35:' ; export LS_COLORS

In this command, “di"" 表示我们在改变目录颜色,"" 0;35它是紫色的。我们为你准备了一份颜色对照表,还能帮你转换其他类型的文件:

  • Blue = 34
  • Green = 32
  • Light Green = 1;32
  • Cyan = 36
  • Red = 31
  • Purple = 35
  • Brown = 33
  • Yellow = 1;33
  • White = 1;37
  • Light Grey = 0;37
  • Black = 30
  • Dark Grey= 1;30
  • di = directory
  • fi = file
  • ln = symbolic link
  • pi = fifo file
  • so = socket file
  • bd = 块设备(缓冲)特殊文件
  • cd = 字符设备(无缓冲)特殊文件
  • or = 指向不存在的文件的符号链接(孤链)
  • mi = 符号链接指向的不存在文件(在输入 ls -l 时可见)
  1. Linux Bashrc: 多行提示符

multiple prompts

bash 不支持多行注释。但有时你需要继续执行命令而不立即结束。这种情况下,可以在每行末尾使用未闭合的引号(' 或 ")、反斜杠(\)或管道符号(|),这样命令就会继续执行而不会立即触发。

  1. Linux Bashrc:在终端顶部显示数据

显示目录信息

如果你想在顶行显示用户/主机、多个任务和日期,这个 .bashrc 提示符可以胜任。此外,它还会显示当前目录中的文件数量及其磁盘占用。代码大概是这样的:

export PS1="\u@\h [\$(pwd):$(ls -F |grep -v / | wc -l)]> "

要永久添加,你可以打开 .bashrc 文件并添加以下一行:

nano ~/.bashrc
PS1="\u@\h [\$(pwd):$(ls -F |grep -v / | wc -l)]> "
  1. Linux Bashrc:高性能简洁提示符

高性能,简单易用
如果你需要一个信息量大但不会拖累电脑性能的方案,这个提示词很适合你。

Code:

PS1='[$(date +"%a %b %d | %T")] -> \w$'
  1. Linux Bashrc:Rob 提示符

Rob 提示词

 

虽然 rob 代码简洁精悍,但它能实现许多复杂示例中出现的功能 

Code:

PS1='[$(wc -l < .bash_history)][\u: \w]$'

提示:要使用这些命令行提示符,可以直接将 "PS1=" 这一行复制粘贴到终端。如需永久保存设置,将这一行粘贴到 ~/.bashrc 文件的末尾。

用例:创建别名

为最常用的命令创建别名可以节省时间。别名是自定义快捷方式,用于代表一个命令(或多个命令),可以带有或不带有自定义选项。例如 ls 命令可以显示目录内容。如果你想查看隐藏文件或获取目录的详细信息,使用别名会更高效。因此我们在这里使用别名。

Also Read: Linux 服务器监控工具和软件

最常用的别名之一是 ll,它通常被设置为运行 ls –lha 或类似的命令。这样可以显示文件的详细信息,包括隐藏文件,并用易读的单位显示文件大小。你也可以用别名来缩短代码、为命令添加默认参数,或防止常见的输入错误。还可以用自定义快捷方式来避免复杂或容易遗忘的语法。执行以下命令可以列出你的配置文件中定义的所有别名: alias command:

alias

该命令的输出会显示在 Ubuntu 18.04 中为你的用户定义的默认别名,如下图所示:

在 Ubuntu 中创建别名

 

如你所见, $ ll Is equivalent to running $ ls –alF。你也可以创建临时别名。方法是:输入别名词,然后在等号后面跟上要执行的命令,用引号括起来。语法如下:

alias shortName="your custom command here"

For example:

alias wr="cd /var/www/html"

这样你就可以用这个快捷方式进入网站根目录。不过它有个限制:只在当前终端会话中有效。关闭终端重新打开后,别名就会失效。如果想永久保存别名,需要创建永久别名。

到目前为止,我们已经讨论了在 Linux 中使用 .bashrc 文件的多种好处。现在让我们来学习如何打开 bashrc 文件和保存文件的步骤,帮助你充分利用 Linux 的 bashrc 功能。

Also Read : 什么是 Netcat 监听器,如何使用它?

如何打开 Bashrc 并保存文件?

语法基本上和创建临时别名相同,但这次还需要将其保存到文件中。方法如下:

Step 1: 打开 .bashrc 文件,方式如下:

vim ~/.bashrc

Step 2:找到别名保存的位置

在文件中找一个合适的位置存放别名。比如,你可以把它们添加到文件的末尾。

Step 3:保存文件。

之后,这个文件会在下一次会话中自动加载。

Note: the unalias command 用于删除别名。

unalias alias_name
unalias -a [remove all alias]

除了在各种命令提示符中使用 bashrc,你可能还需要了解如何修改 .bashrc 文件,我们将在下面讲解。

如何编辑 .bashrc 文件?

你可以在任何终端文本编辑器中添加自己的命令。方法是编辑 bashrc。我们将使用 nano editor 在以下示例中。

Step 1: 要用 nano 编辑 bashrc,在终端中输入以下命令:

nano ~/.bashrc

Note: 如果这是你第一次编辑 .bashrc 文件,可能会发现它是空的。这没问题。如果不是空的,你可以在任何行添加内容。

记住,你对 .bashrc 做的任何更改会在下次启动终端时生效。如果想立即使用这些更改,运行以下命令:

source ~/.bashrc

Step 2: 你可以在 .bashrc 文件中的任何位置添加内容。不过最好用注释(以 # 开头)来整理代码。

Note:  注意,.bashrc 中的编辑必须遵循 bash 脚本格式。如果你不了解 bash 命令脚本,可以查阅在线资源。

如何重新加载 bashrc 文件?

如果想重新加载 bashrc 文件而不打开新文件,运行以下命令:

~/ .bashrc

如你所知,点操作符会在当前环境中从文件执行此命令。你也可以使用 source 命令,如下所示:

Source ~/ .bashrc

什么是 bash_profile?

每次创建新的 bash 会话时,系统都会创建一个 bash 配置文件。这是位于你计算机主目录中名为 .bash_profile 的文件,bash 会运行它。要创建你的 bash 文件,运行以下命令:

sub1 ~/ .bash_profile

波浪线符号 (~) 等同于 /User/Rich,它告诉 bash 从主目录开始遍历文件系统。这意味着你可以用以下格式重写前面的命令:

Sub1 /Users/Rich/.bash_profile

不过使用 (~) 是一个快捷方式,每个用户都能理解。

Where is bash_profile?

你可能想知道 bash_profile 文件的位置。bash_profile 是隐藏在主文件夹中的文件,需要设置显示隐藏文件才能看到。如果 ~/.bash_profile 不存在,系统会使用 ~/.profile 代替。

Bashrc vs. bash_profile

.bashrc 仅在 bash 作为非登录 shell 的交互模式下被加载。相反,.bash_profile 仅在 bash 带 --login 选项作为非交互 shell 运行,或作为交互登录 shell 启动时被加载。这意味着 .bash_profile 适合只需运行一次的命令,而 .bashrc 适合在每个新 shell 中都要运行的命令。

linux-vps Linux 主机服务简化版

想要更好的方式来托管网站和网络应用?正在开发新项目?或者只是不喜欢 Windows?这就是我们提供 Linux VPS 的原因。

获取你的 Linux VPS

总结:Linux bashrc               

本文简要介绍了 Linux bashrc 及其用途。当然,关于这个话题还有更多内容要学。.bashrc 的可能性取决于你的想象力和编码能力。通过我们的快速简易指南,你应该能够掌握我们提到的所有基本 .bashrc 操作。此外,你还可以使用我们的 Linux VPS solutions 帮助您充分利用 Linux。我们的 KVM 驱动的 Linux VPS 方案提供多项优势,包括充足的带宽、99.95% 的正常运行时间保证、超快速的 SSD 存储、稳定的连接和全天候技术支持。现在就入手我们的 Linux VPS,仅需 $7.95。如果您有其他疑问,欢迎留言,我们会尽快回复。

FAQ

什么是 .bashrc 文件?

.bashrc 是一个 shell 脚本,Bash 启动时会执行它。通过 .bashrc 你可以定制命令行界面(CLI)或终端应用的外观和行为,以及操作系统的相关设置

Linux 中的 bash_profile 是什么?

.bash_profile 是用来自定义用户配置设置的文件,通常是隐藏的,位于主目录中。.bash_profile 文件是配置脚本,包含变量定义、导出变量以及登录命令,比如邮件或新闻搜索。

为什么叫 bashrc?

在 bashrc 中,rc 代表短语 "run commands"(运行命令)。

Linux 中的 bash_profile 在哪里?

bash_profile 位于每个用户的主目录中,每个用户可以有不同的 bash 配置。

Share

博客更新

Keep reading.

可与 Cosmos Cloud 运行的最佳自托管应用,封面显示 Cosmos 仪表板周围的应用面板。
Servers & OS

可与 Cosmos Cloud 运行的最佳自托管应用:文件、媒体、密码、自动化等!

Maybe 你已设置 Cosmos Cloud,现在想了解哪些应用能很好地配合使用,或者你甚至还没决定选择 Cosmos,只是想看看它如何融入你的工作流

Nick SilverNick Silver 16 min read
Portainer 对比 Cosmos Cloud 管理 Docker 应用,封面显示混合部署图以及 neon 操作对比访问块。
Servers & OS

Portainer 对比 Cosmos Cloud:Docker 应用管理的最佳选择

如果你已了解 Docker,只是想找到更清晰的方式运行不断增长的应用栈,这是 Portainer 对比 Cosmos Cloud 的简短答案。Portainer 是更强劲的选择,用于直接

Nick SilverNick Silver 14 min read
Cosmos Cloud 对比 CasaOS 对比 Umbrel 功能图,显示一个抽象云网络世界内的三条自托管路径。
Servers & OS

Cosmos Cloud 对比 CasaOS 对比 Umbrel:哪个自托管平台适合你?

简短答案是 CasaOS 仍是最容易入门的选择,Umbrel 拥有最简洁的精选风格,Cosmos Cloud 在你需要更严格控制域名时更有意义

Nick SilverNick Silver 11 min read

Ready to deploy? From $2.48/mo.

独立云服务,始于2008年。AMD EPYC、NVMe,40 Gbps。14天退款保障。