如何重新加载.bashrc而不注销并返回?
如果我对.bashrc
进行了更改,如何在不注销的情况下重新加载它?
你只需要input命令:
source ~/.bashrc
或者您可以使用命令的较短版本:
. ~/.bashrc
或者你可以使用;
exec bash
做同样的事情。 (更容易记住,至less对我来说)
exec命令用给定的程序代替shell,在我们的例子中,它用bashreplace我们的shell(使用更新后的configuration文件)
为了补充和对比两个最受欢迎的答案. ~/.bashrc
. ~/.bashrc
和exec bash
:
这两个解决scheme有效地重新加载~/.bashrc
,但有所不同:
-
source ~/.bashrc
将保留你当前的shell :- 除了将
~/.bashrc
重新加载到当前shell( sourcing )所做的修改以外, 还保留了当前shell及其状态 ,其中包括环境variables,shellvariables,shell选项,shell函数和命令历史logging。
- 除了将
-
exec bash
或更强大的exec "$BASH"
[1]将用新实例replace当前的shell ,因此只保留当前shell的环境variables (包括特定的shell )。- 换句话说:就shellvariables,shell函数,shell选项,命令历史而言,对当前shell的任何临时更改都将丢失。
根据您的需要,可以select其中一种方法。
[1] exec bash
理论上可以执行一个不同于启动当前shell的bash
可执行文件,如果它碰巧存在于之前在$PATH
列出的目录中的话。 由于特殊variables$BASH
总是包含启动当前shell的可执行文件的完整path,所以exec "$BASH"
保证使用相同的可执行文件。
在$BASH
周围重新注释"..."
:双引号确保variables值按原样使用,而不用Bash解释; 如果该值没有embedded空格或其他shell元字符(在这种情况下不太可能),则不必严格使用双引号,但使用它们是一个很好的习惯。
. .bashrc
…
根据您的环境,只需键入
bash
也可能工作。
有了这个,你甚至不必input“source〜/ .bashrc”:
包括你的bashrc文件:
alias rc="vim ~/.bashrc && source ~/.bashrc"
每次你想编辑你的bashrc,只需运行别名“ rc ”
TL; DR
. ~/.bashrc
TMI
. ~/.bashrc
。 是“source”内置命令的BASH快捷方式。 – Brian Showalter
source ~/.bashrc
替代
exec bash
source
是一个内置的shell命令,用于执行当前shell中作为parameter passing的文件的内容。exec
命令用给定的程序replaceshell- – WhoSayIn
types:
source .bashrc
我在msysgit上使用下面的命令
. ~/.bashrc
较短的版本
source ~/.bashrc
这也将工作..
cd ~ source .bashrc