使用 sudo -s 但显示当前文件夹名称

使用 sudo -s 但显示当前文件夹名称

有没有办法使用sudo -s但在提示中保留当前文件夹名称?

终端

我想在使用时看到jw:documents nescalante$而不是。bash-3.2#sudo -s

谢谢!

答案1

当你使用时,sudo -s你将获得类似于的行为sudo /bin/bash
变量用户设置为root,不再设置为nescalante

您可以将其放入您的.bashrc或最坏的情况下,在您的.bash_aliasesIF THEN 块中,以便在您是 root 用户时设置您的提示。

if [ "$USER" = "root" ]
then
  export PS1="\[\e[36;1m\]\u@\[\e[32;1m\]\h \[\e[34;1m\]\w> \[\e[0m\]"
fi

如果你不想知道你在这个 shell 中是 root 身份,你可以写

  export PS1="\[\e[36;1m\]HowIWantToBe@\[\e[32;1m\]\h \[\e[34;1m\]\w> \[\e[0m\]"

我强烈建议留下你是 root 的记录.root可以用一个命令行删除一个系统,其方式多到你无法想象:)。

笔记:

  • 如果你使用不同于bash您必须在不同于的文件中用不同的语法编写.bashrc
  • 您可以在 shell 启动文件(例如)中搜索您的用户当前正在使用的提示 PS1 值,.bashrc并根据需要复制/修改它。
  • 如果你想更好地了解sudo命令su的功能,请参阅手册页或快速浏览一下,例如这里

相关内容