ubuntu - 用于远程服务器管理的自定义 shell

ubuntu - 用于远程服务器管理的自定义 shell

我在管理远程服务器时遇到的主要困难之一是,当它们的 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文件。

相关内容