sudo -s 源/home/用户名/.bashrc

sudo -s 源/home/用户名/.bashrc

在我的 GNU/Linux Debian 9 上,我想运行:

sudo -s source /home/UserName/.bashrc

我想分别定义一个像这样的别名,让我们命名它su2

我无法运行这样的命令。

该命令成功运行,但不符合我的预期。

调用它似乎没有做任何事情,甚至没有让我扎根。

我很困惑为什么会这样。

所以我想要它做什么:

  1. 像根我一样:

    sudo -s
    
  2. 来源我的个人的bashrc 和别名如:

    source /home/UserName/.bashrc
    source /home/UserName/.bash_aliases
    

就这样。

答案1

source是一个内置的 shell,所以你不能运行它通过 sudo。以下应该有效:

sudo bash --rcfile /home/UserName/.bashrc

.bash_aliases通常由(默认情况下 Bash 不支持)处理.bashrc,例如

if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases; fi

要正确处理别名,您可以将其替换为

if [ -f /home/UserName/.bash_aliases ]; then . /home/UserName/.bash_aliases; fi

相关内容