我可以让 shell 显示设置跟随我吗?

我可以让 shell 显示设置跟随我吗?

我全天使用本地虚拟机远程访问多个盒子。我首选的 shell 显示设置是:

export TERM=xterm-256color
export PROMPT_DIRTRIM=6
PS1='${debian_chroot:+($debian_chroot)}\[\e[0;31m\]\u\[\e[m\]@\[\033[01;32m\]\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

这是在我的.bashrc.有没有办法让它跟随我从一个主机到另一个主机?

警告:我不知道在任何一天我将访问哪些主机。因此,在我通过 ssh 连接的每台主机上预先配置这些对我来说并不是一个真正的选择。

答案1

一定。您可以将其复制到远程服务器上帐户的所有 .bashrc,或者在每个服务器各自的 sshd_config 中,将 AcceptEnv 行配置为继承 TERM、PS1 和 PROMPT_DIRTRIM。

所以它会是(LANG 和 LC_* 已经存在于我的配置中):

AcceptEnv LANG LC_* TERM PS1 PROMPT_DIRTRIM

您还必须以完全相同的方式在 ssh_config SendEnv 中进行配置。

如果无法修改远程端,您可以通过 ssh 传递它们只要远程端不覆盖它们

ssh -l user remote_server   -t  "PROMPT_DIRTRIM='test'; exec bash"

相关内容