![ssh_config 中的 Match all 和 Host * 块有什么区别](https://linux22.com/image/221469/ssh_config%20%E4%B8%AD%E7%9A%84%20Match%20all%20%E5%92%8C%20Host%20*%20%E5%9D%97%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB.png)
当我查看当前的 OpenSSH 客户端配置文件并仔细阅读ssh_config(5)
手册页时,我发现,根据我的理解, 和Match all
都会Host *
实现相同的结果。
Match
因此,我想知道它们满足相同需求的事实是否是两者和块的其他用法的副作用Host
,或者两者之间是否存在细微的差异?
编辑:
看完问题的答案后741771(谢谢@muru的建议),我仍然有一些疑问:
在其中,@BlockchainOffice 首先说:
Match all 块匹配所有主机,相当于 Host *。
我理解为“它们可以以完全相同的方式使用”。然而,后来他补充道:
Match All 与 Host * 有何不同?
Host * 匹配所有主机,因此后面的配置指令将应用于所有主机。主机名可以出现在您使用的模式中的任何位置(作为模式本身的一部分,或者出现在星号后面)。
“Match All”关键字用于对适用于特定主机的所有配置指令进行分组。当您使用“Match All”时,您不需要指定模式,因为它默认会匹配所有主机。
现在我有点迷失了。这两段似乎说它们不同,但我不明白如何。主要是我没有得到“主机名可以出现在您使用的模式中的任何位置(作为模式本身的一部分,或者在星号之后的末尾)”。关于主机*。我不确定这里的主机名指的是什么以及它如何出现在模式中(什么模式?)或星号之后。