我有一个允许 ssh 登录的主机帐户。我的主机上有几个网站,每个网站都有自己的 ssh 登录名,所以我登录为:-
ssh websitename@myhost.co.uk
ssh anothersite@myhost.co.uk
ssh yetanothersite@myhost.co.uk
Run Code Online (Sandbox Code Playgroud)
我希望在 ssh_config 中做的事情是这样的:-
Host websitename anothersite yetanothersite
Hostname myhost.co.uk
User %h
Run Code Online (Sandbox Code Playgroud)
但这不起作用,因为 %h 不在 User 行中替换。
有谁知道我如何实现我想要的,在 ssh 之后只输入站点名称(好吧,它实际上只是站点名称的前 8 个字母)并得到结果“ssh sitename@myhost.co.uk”?
您可以使用多个Host指令,例如:
Host websitename anothersite yetanothersite
Hostname myhost.co.uk
Host websitename
User websitename
Host anothersite
User anothersite
Host yetanothersite
User yetanothersite
Run Code Online (Sandbox Code Playgroud)
达到你想要的。
这并不完美,因为您将不得不多次复制主机名/用户名,但 AFAIK 最好使用ssh_config.
或者考虑使用 shell 级别名,如下所示:
Host websitename anothersite yetanothersite
Hostname myhost.co.uk
Host websitename
User websitename
Host anothersite
User anothersite
Host yetanothersite
User yetanothersite
Run Code Online (Sandbox Code Playgroud)
甚至是一个函数:
>alias websitename="ssh websitename@myhost.co.uk"
>websitename
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
397 次 |
| 最近记录: |