如何从命令行重新加载文件.bash_profile ?
通过退出并重新登录,我可以让shell识别对.bash_profile的更改,但我希望能够按需执行。
如何从命令行重新加载文件.bash_profile ?
通过退出并重新登录,我可以让shell识别对.bash_profile的更改,但我希望能够按需执行。
当前回答
当使用源~/。bash_profile或前面的答案工作,有一件事要提到的是,这只是在当前选项卡或会话中重新加载您的Bash配置文件。如果希望在每个选项卡/shell上重新加载bash配置文件,则需要在每个选项卡/shell中手动输入此命令。
如果使用iTerm,可以使用CMD⌘+ Shift + I在所有当前选项卡中输入命令。对于终端来说,参考这个问题可能是有用的;
其他回答
如果您不介意丢失当前shell终端的历史记录,也可以这样做
bash - l
这将分叉您的shell并打开bash的另一个子进程。-l参数告诉Bash作为登录shell运行。这是必需的,因为.bash_profile不会作为非登录shell运行。欲了解更多信息,请阅读此处。
如果你想完全替换当前的shell,你还可以做:
执行bash -l
上面的代码不会分叉你当前的shell,而是完全替换它,所以当你输入exit时,它会完全终止,而不是让你回到上一个shell。
我喜欢的事实是,在你刚刚编辑文件后,你所需要做的就是键入:
. !$
这将在历史记录中查找刚才编辑过的文件。看看什么是砰的美元在bash。
Use
alias reload!=". ~/.bash_profile"
或者如果想通过函数添加日志:
function reload! () {
echo "Reloading bash profile...!"
source ~/.bash_profile
echo "Reloaded!!!"
}
如果.bash_profile文件不存在,可以尝试执行以下命令:
. ~/.bashrc
or
source ~/.bashrc
而不是。bash_profile。
您可以找到关于bashrc的更多信息。
添加别名bashs="source ~/ "。bash_profile”到Bash文件中。
所以下次你可以调用bash。