如何在 .ssh/config 中为域添加别名?

如何在 .ssh/config 中为域添加别名?

我可以在 .ssh/config 中为各个主机添加别名,如下所示:

Host nickname
    Hostname host1.example.com

但有时我想为整个域指定别名,以便节省在该域上的计算机的命令行上的输入:

Host *.nick
    Hostname %h.really.long.domain.example.com

当然,这并不像写的那样有效。有什么东西可以吗?


评论已建议这个问题作为重复项,但该解决方案不适用于此用例;它要求在配置文件中明确列出所有主机。我正在寻找一种全局方法;我想告诉 SSH '重写任何形式的主机host???.shorthost???.really.long.example.com.'

把它想象成相当于sed s/.short/.really.long.etc/

答案1

无法以这种方式执行替换,但可以CanonicalDomains在尝试检查域是否存在之前将域附加到主机名。

CanonicalDomains really.long.domain.example.com
CanonicalizeHostname yes

Host *.really.long.domain.example.com
    AdditionalDirectives

相关内容