谁知道为什么会这样?这是bash的错误吗?
x='mnt:[4026532411]'
[[ $x == $x ]] && echo OK
Run Code Online (Sandbox Code Playgroud)
我期待结果OK,但事实并非如此.
当然,这是有效的
[[ "$x" == "$x" ]] && echo OK
Run Code Online (Sandbox Code Playgroud)
但据我所知,bash [[]]的优点是在比较时不需要引用var.
x='a b'
[[ $x == $x ]] && echo OK
Run Code Online (Sandbox Code Playgroud)
作品.
讽刺的是
x='mnt:[4026532411]'
[[ $x != $x ]] && echo Oh my god
Run Code Online (Sandbox Code Playgroud)
结果是我的天啊
virtualbox文档没有明确解释。
https://www.virtualbox.org/manual/ch09.html
9.11.5。在NAT模式下启用DNS代理默认情况下,NAT引擎向来宾提供与主机上配置的DNS服务器相同的DNS服务器。在某些情况下,可能希望对来宾隐藏DNS服务器IP,例如,当此信息由于DHCP租约到期而可能在主机上更改时。在这种情况下,您可以使用以下命令告诉NAT引擎充当DNS代理:
VBoxManage Modifyvm“ VM名称” --natdnsproxy1上
9.11.6。在NAT模式下将主机的解析器用作DNS代理为了解析网络名称,NAT引擎的DHCP服务器提供了主机的已注册DNS服务器的列表。如果由于某种原因您需要隐藏此DNS服务器列表并使用主机的解析器设置,从而迫使VirtualBox NAT引擎拦截DNS请求并将它们转发到主机的解析器,请使用以下命令:
VBoxManage Modifyvm“ VM name” --natdnshostresolver1 on注意,此设置与DNS代理模式相似,但是,代理模式仅将DNS请求转发到适当的服务器,而解析器模式将解释DNS请求并使用主机的DNS API查询信息并将其返回给访客。
谁能真正了解其中的区别?
编辑:需要一个实际的例子。