我经常使用sudo -s -H
,但执行后想有别名如何做?
解释:我以 user1(在 sudoers 中)的身份登录服务器。此用户在以下位置有别名.bash_aliases
:
alias rm='rm -i'
现在我执行sudo -s -H
现在rm
没有别名 - 因此它会在没有提示的情况下删除文件。
如何改变它?
(我看到带有 - 的帖子alias sudo='sudo '
,但它只能执行命令sudo command
- 而不是sudo -s -H
答案1
您必须在 下获取相同的别名/root/.bashrc
。
您可以通过两种方式执行此操作:
复制
/home/user1/.bash_aliases
到/root/.bash_aliases
并添加以下内容/root/.bashrc
:if [[ -f /root/.bash_aliases ]] then . /root/.bash_aliases fi
/home/user1/.bash_aliases
文件来源/root/.bashrc
:if [[ -f /home/user1/.bash_aliases ]] then . /home/user1/.bash_aliases fi
您选择的解决方案取决于个人偏好。我使用选项 2,因为我希望 root 拥有与普通用户相同的别名等,这样我只需在一个地方维护它(您也可以创建指向 的符号链接/home/user1/.bash_aliases
,/root
但效果是一样的)。
如果您选择选项 1,则必须分别为user1
和维护别名root
。这可能适合您的用例,也可能不适合。