我有一个允许 ssh 登录的托管帐户。我的主机上有几个网站,每个网站都有自己的 ssh 登录名,因此我登录为:-
ssh [email protected]
ssh [email protected]
ssh [email protected]
我希望在 ssh_config 中做的事情是这样的:-
Host websitename anothersite yetanothersite
Hostname myhost.co.uk
User %h
但这不起作用,因为 %h 在用户行中没有替换。
有谁知道我如何实现我想要的,在 ssh 之后仅输入站点名称(嗯,实际上只是站点名称的前 8 个字母)并得到结果“ssh”[电子邮件受保护]'?
答案1
您可以使用多个Host
指令,如下所示:
Host websitename anothersite yetanothersite
Hostname myhost.co.uk
Host websitename
User websitename
Host anothersite
User anothersite
Host yetanothersite
User yetanothersite
实现你想要的。
这并不完美,因为您必须多次重复主机名/用户名,但据我所知,您可以使用ssh_config
.
或者考虑使用 shell 级别名,如下所示:
>alias websitename="ssh [email protected]"
>websitename
甚至是一个函数:
>wssh() { ssh [email protected] }
>wssh anothersite