作为我的设置的一部分,我经常需要在我们的环境中使用
newgrp voodoo
Run Code Online (Sandbox Code Playgroud)
如果我尝试将它放在.bashrc文件中,我会得到无限循环.
任何想法如何在启动时自动加载相同的功能?
一旦你启动bash,就会有两个脚本启动:
.bashrc 用于交互式shell
.bash_profile 用于登录shell
根据您运行newgrp命令的方式,将执行其中一个命令:
newgrp - your_group 将启动一个新的登录shell,从而阅读 .bash_profile
newgrp your_group(没有破折号)将启动一个新的交互式shell读取.bashrc
如果你没有从另一个文件中获取一个文件,那么你应该能够通过选择正确的启动脚本和newgrp开关组合来绕过递归.
newgrp - ...在.bashrc将工作
newgrp ...在.bash_profile将工作
其他两个组合将导致您已经描述过的递归.如果其中一个文件来源于另一个,因为经常看到你会遇到麻烦.
顺便说一句:如果.bash_profile不存在,bash会读取文件.profile.我只是提到它,因为一些专家甚至设法.bashrc从那里采购他们.
如果这两种组合都不适用于您的设置,则可能需要使用shell脚本.环境变量$GROUPS应该报告您所属的组,例如:
[ "$GROUPS" = "200" ] || newgrp your_group
Run Code Online (Sandbox Code Playgroud)
或者你巫毒团体的id可能会有所帮助.
| 归档时间: |
|
| 查看次数: |
3211 次 |
| 最近记录: |