2016-08-01 57 views
0

我无法找到这个althougth的答案有很多类似的问题。我想改变我的Linux命令提示符的基础上,我有ssh远程主机的颜色。因为bash环境变量不保留在ssh ,所以我怎么做到这一点。有几百个服务器我每天登录。所以每个远程主机改变/.bashrc是不可能的。我有一种方法可以提取一个脚本,每次ssh完成都可以调用。可以有人请详细说明哪些文件以及它应该如何编辑.gnome,openssh等不会被提供。

+0

你可以使用'ssh host'PS1 = $ PS1 bash'',但配置'PS1'的远端配置文件几乎肯定不会检查'PS1'是否已经设置。 – chepner

+2

请参阅:[我可以通过ssh转发env变量吗?](http://stackoverflow.com/q/4409951/3776858) – Cyrus

+0

但我在寻找的是一个conf文件或类似的东西或一些脚本的变化每次我都可以调用ssh,而不用改变d的方式我使用SSH命令... –

回答

0

“由于bash的环境变量,不会保留通过ssh ......”

人SSH

Additionally, ssh reads ~/.ssh/environment, and adds lines of the format 
    “VARNAME=value” to the environment if the file exists and users are 
    allowed to change their environment. For more information, see the 
    PermitUserEnvironment option in sshd_config(5). 
+0

这只适用于服务器的配置已启用 PermitUserEnvironment,默认关闭。 –

0

SSH执行过程中,一个新的登录shell执行。在shell登录期间 * rc文件没有执行,只执行了* profile。

所以把你的代码中/etc/profile文件〜/ .bash_profile中