通过 ssh 连接导出 .bashrc 文件

通过 ssh 连接导出 .bashrc 文件

我已经根据自己的喜好设置了 .bashrc 文件。我通常在插入远程服务器的硬件上工作。我通过 ssh 进入该远程服务器。我希望在 ssh 进入远程服务器时运行我的 .bashrc,而不是服务器上的 .bashrc。有没有什么方法可以实现这一点?

答案1

据我所知,没有办法做到这一点。

也许您应该将您的复制~/.bashrc到一台服务器并在所有其他服务器上安装配置管理工具(Puppet、Chef 等)来拉取它。

答案2

我认为 sshrc 就是你要找的: https://github.com/taylorskalyo/sshrc

sshrc 的工作方式与 ssh 类似,但它还会在远程登录后获取 ~/.sshrc。

$ echo "echo welcome" > ~/.sshrc
$ sshrc me@myserver
welcome

$ echo "alias ..='cd ..'" > ~/.sshrc
$ sshrc me@myserver
$ type ..
.. is aliased to `cd ..'

您可以使用它来设置环境变量、定义函数和运行登录后命令。就这么简单,而且不会影响服务器上的其他用户 - 即使他们也使用 sshrc。有关更高级的配置,请继续阅读。

答案3

我觉得https://github.com/fsquillace/pearl-ssh满足您的需要。

我早在 sshrc 诞生之前就写过它,与 sshrc 相比,它有更多好处:

  • 它不需要两台主机都依赖 xxd(远程主机上可能不可用)
  • Pearl-ssh 使用更高效的编码算法
  • 它只有~20行代码(真的很容易理解!)

例如:

$> echo "alias q=exit" > ~/.config/pearl/sshrc
$> ssh_pearl [email protected]
myserver.com $> q
exit

相关内容