假设我是普通用户,我将切换到 root:
user ~ $ su - root
Password:
root ~ #
因此,一旦我以 身份登录root
,我想自动运行以下命令:
source .bash_profile
above command
请问我怎样才能让它自动运行?
假设我是普通用户,我将切换到 root:
user ~ $ su - root
Password:
root ~ #
因此,一旦我以 身份登录root
,我想自动运行以下命令:
source .bash_profile
above command
请问我怎样才能让它自动运行?
根据 bash 手册页,.bash_profile
对登录 shell.bashrc
执行,而对交互式非登录 shell 执行。
在您的情况下,您不需要.bash_profile
像这样采购。
你只需要把source .bash_profile
你的根.bashrc
文件
if [ -f ~/.bash_profile ]; then
source ~/.bash_profile
fi
阅读我以更好地理解.bash_profile
和.bashrc
更新
例子:
[root@sgeorge-ld ~]# cat .bashrc | tail -1
echo "Testing .bashrc for a stack query"
[root@sgeorge-ld ~]# exit
logout
[sgeorge@sgeorge-ld ~]$ su - root
Password:
Testing .bashrc for a stack query
[root@sgeorge-ld ~]#
首先,当您切换到 root 用户时,您仍然是您的普通用户的主目录。您要执行哪个 .bash_profile?/Users/myuser/.bash_profile 还是 root 的 /var/root/.bash_profile?
不管你想执行什么,你都可以编辑 /var/root/.bashrc (如果你没有它,创建一个)并在那里添加你的命令。