我在管理远程服务器时遇到的主要困难之一是,当它们的 shell 非常相似时(事实上,大多数情况下只有用户不同),如何识别我正在工作的服务器。
我想知道是否有可能创建风俗shell 考虑删除我所连接的服务器。
谢谢您的帮助,谨致问候!
答案1
如果你的意思是定制外壳迅速的,查看 PS1 变量(男子猛击,搜索 PS1)。它有很多选项。这里是一份完整的指南,但首先尝试一下
export PS1=\u@\H \$>
这会给你提示
[email protected] $> _
答案2
您是否利用 PS1 变量进行自定义?并非所有版本的 shell 都以相同的方式处理变量,但大多数 shell 会接受 \h 作为主机名、\u 作为用户名以及 \w 作为当前工作目录。
请参见这一页以获得更多选项、示例和建议。
答案3
关于 ps1 调整,这是我在 .bashrc 中使用的
userName=`whoami`
if [ $userName == "root" ]
then
PS1='\[\e[0;31m\]\u\[\e[0m\]@\[\e[0;35m\]\h\[\e[0m\][$?]\[\e[0;31m\][\W]\[\e[0m\]\[\e[0;31m\]\$\[\e[0m\]: '
else
PS1='\[\e[0;32m\]\u\[\e[0m\]@\[\e[0;35m\]\h\[\e[0m\][$?]\[\e[0;31m\][\W]\[\e[0m\]\[\e[0;32m\]\$\[\e[0m\]: '
fi
当用户名为 root 时,它将显示红色;否则,它将显示绿色。并且具有最后一个命令的主机名和返回代码。- 可能会对您有所帮助。
另外,尝试 byobu(如对 mrshunz 的评论中所建议的那样)
答案4
只需使用唯一且不言自明的名称作为远程服务器的主机名。然后,您将能够知道您正在哪个服务器上工作!
您可以从 更改主机名/etc/hostname
。重新启动服务/etc/init.d/hostname restart
。另外,不要忘记更新/etc/hosts
文件。