![基于 $LOGNAME 的主环境脚本可在任何 shell 调用上运行](https://linux22.com/image/93132/%E5%9F%BA%E4%BA%8E%20%24LOGNAME%20%E7%9A%84%E4%B8%BB%E7%8E%AF%E5%A2%83%E8%84%9A%E6%9C%AC%E5%8F%AF%E5%9C%A8%E4%BB%BB%E4%BD%95%20shell%20%E8%B0%83%E7%94%A8%E4%B8%8A%E8%BF%90%E8%A1%8C.png)
在处理一系列 Linux(和 Solaris)服务器时,我发现 90% 的用户需要相同的环境变量,其中包含一些针对单个用户的独特细节。
我的目标是消除为每个用户创建一个的需要.profile
,我可以认为通过编写/运行主(环境)脚本来获取适当的环境,该脚本运行 90% 的内容并通过 的值规定 10% 的细节$LOGNAME
。
我真正的问题是如何让这个主脚本运行任何 shell 调用
- 登录 shell 大部分是
bash
,但我希望也有它sh
。 - 任何子shell
- 任何非交互式 shell
ssh
,是的,我想要从主机远程登录A举办乙,并且对我的环境已加载的情况感到满意!sudo su - user
,如果我对任何用户执行 sudo,则该主环境脚本应该运行cron
at
batch
- 我还缺少什么?我只希望这个主环境脚本以任何调用 shell 的方式运行。
我从$BASH_ENV
每手册,但这不适用于ssh