通过ssh在远程服务器上使用本地LS_COLORS而不修改远程服务器

前端之家收集整理的这篇文章主要介绍了通过ssh在远程服务器上使用本地LS_COLORS而不修改远程服务器前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我可以访问大量不同的ssh帐户,我想象的几百个,我在不同场合使用.其中一些是个人的,其中一些是我从客户那里得到的并且是共享的,而且其中的一些都是暂时的.创建一次使用,会在一段时间后自动删除.

现在我的问题是我使用两个.dircolors,一个灯和一个黑暗的主题.我非常喜欢这种设置,但这意味着每次我进入服务器时都会复制一个新的.dircolors,并且在共享帐户上偶尔会让其他人烦恼.我尝试修改我的ssh脚本以允许我使用我的本地LS_COLORS,但我遇到了一些问题.

如果我使用:
ssh -t vps2’export LS_COLORS =“’$LS_COLORS’”; exec / bin / bash –noprofile –norc’
它可以工作,但不完全可用,因为它忽略了所有系统的默认信息.

如果我使用:
ssh -t vps2’export LS_COLORS =“’$LS_COLORS’”; exec / bin / bash’
它不起作用,因为bash通过.profile并加载不同的LS_COLORS.

有关如何加载默认.bash_profile / .bashrc并拥有自己的LS_COLORS的任何建议?

解决方法

使用您喜欢的任何初始化创建一个文件,说“prefs.rc”.
$scp prefs.rc vps2:/tmp/ && ssh vps2
# ssh banner
$. /tmp/prefs.rc && rm /tmp/prefs.rc

我可能会添加一些检查来验证远程文件确实是我的写入,
并且不包含某些木马.最好在偏执狂方面犯错.

或者,使用序列启动prefs.rc

. /etc/profile
. ~/.bash_profile
exec LSCOLORS=...

使用scp进行传输,然后:

ssh -t vps2 'exec bash --rcfile /tmp/prefs.rc'

最终,您可能需要复制.bash_profile的全部内容,并且只需替换LS_COLORS = …行.

原文链接:https://www.f2er.com/linux/397422.html

猜你在找的Linux相关文章