有没有办法完全重启 Bash 并重新加载.bashrc
等等.profile
?我想确保编辑这些文件后我的更改能够正常运行。
答案1
让它用自己替换自己。
exec bash -l
请注意,这不会影响 cwd 或导出变量等内容。
答案2
我紧急建议在单独的窗口/屏幕上登录。这样,如果您对启动文件的更改出现问题,您仍然可以进行工作会话。此外,您也一定会拥有一个干净的环境。
原因:我看到太多人因为 .profile(或类似的)中的简单拼写错误而将自己锁定在系统之外。
答案3
如果您的目标只是再次读取修改后的文件,则不必重新启动它。您可以简单地获取它。
source filename
或者
. filename # notice the dot
请注意,这不会给您一个“干净的状态”,因为它不会取消设置任何设置的变量或定义的函数......
答案4
su -l yourOwnUserName
将为yourOwnUserName
用户打开一个新的 shell,并重新加载所有设置。这是独立于 shell 的,因为它指的是系统设置,而不是您的特定 shell。它还加载一些不加载的系统范围设置bash -l
(例如用户组)。