我在〜/ .bash_profile
上设置了一些别名喜欢,别名artisan ='php artisan', 并输入:source~ / .bash_profile。 可以在终端中执行“工匠”。
但是当我换成Root(类型:sudo su)时,它不再起作用了。 终端显示找不到命令。
我搜索其他一些话题说有./bashrc 我复制了我的USER bash_profile中的所有内容 到./bashrc,并重新加载它,仍然无法正常工作
有人能告诉我为什么会遇到这个问题吗?非常感谢你。
答案 0 :(得分:2)
您可以使用sudo -s
代替sudo su
。它会保留更多常规环境,包括将$ HOME设置为常规用户主目录而不是root用户的主目录,这意味着bash将从用户主目录运行.bashrc在根家里寻找它。
(正如l' L' l指出,它的.bashrc不是./bashrc)
答案 1 :(得分:0)
~/.bashrc
会自动获取,因为它位于您的主目录(~
)中。
但是,当您更改为root时,您的主目录也会更改。
您可以输入以下命令来测试:
$ sudo su
$ echo ~
/var/root
当您考虑将~/.bashrc
放入根主目录时: 非常糟糕的主意 。不要弄乱那个目录。但是,您可以将其放入/etc/bashrc
,在这种情况下,它将为系统上的所有用户提供。