无需重启即可刷新别名?

Arc*_*ing 2 command-line reboot bash alias bashrc

添加新别名后,/etc/bash.bashrc我无法使用别名,除非我通过执行reboot.

我宁愿不使用reboot,因为注销很烦人,等待 2-4 秒,然后再次登录到我的 VPS 环境。

鉴于我也不想在新窗口中使用子外壳或单独的外壳,为此,我问:

我必须reboot吗?有没有办法在不重新启动的情况下在同一个 shell 中使用别名?

Yar*_*ron 7

您可以使用source命令加载新别名而无需重新启动

source /etc/bash.bashrc
Run Code Online (Sandbox Code Playgroud)

bash源

. (源或点运算符)

从当前 shell 上下文中的 filename 参数读取和执行命令。

句法 。文件名 [参数]

  source filename [arguments]
Run Code Online (Sandbox Code Playgroud)

source 是点/句点 '.' 的同义词。在 bash 中,但不在 POSIX sh 中,因此为了最大的兼容性,请使用句点。

当脚本使用源代码运行时,它在现有 shell 中运行,脚本创建或修改的任何变量在脚本完成后仍然可用。相反,如果脚本仅作为文件名运行,则将生成一个单独的子 shell(具有一组完全独立的变量)来运行脚本。


wal*_*tor 5

您可以source /etc/bash.bashrc让当前的 shell 重新读取该文件。