ping -qc 1 $(idn2 правительство.рф)
我在 bash 脚本文件中有以下命令ping.sh
。
当我运行脚本时,$ bash -x ./ping.sh
我得到:
++ idn2 правительcтво.рф
+ ping -qc 1 xn--c-7sbgbnrw0abkzd2k.xn--p1ai
ping: unknown host xn--c-7sbgbnrw0abkzd2k.xn--p1ai
+ exit
结果idn2
是xn--c-7sbgbnrw0abkzd2k.xn--p1ai
$ ping -qc 1 $(idn2 правительство.рф)
但是当我在终端 bash 命令行中输入命令时,我得到另一个结果:
PING xn--80aealotwbjpid2k.xn--p1ai (95.173.135.62) 56(84) bytes of data.
--- xn--80aealotwbjpid2k.xn--p1ai ping statistics ---
1 packets transmitted, 0 received, 100% packet loss, time 0ms
idn2
结果为xn--80aealotwbjpid2k.xn--p1ai
.
这是什么?
答案1
简而言之,请确保使用正确的键盘布局键入国际域名,并且不要使用错误的键盘布局来修复国际域名拼写。
我已经правительство.рф
手动重写了脚本中的字符串,然后测试了脚本,问题就消失了。我很幸运,我已将脚本添加到 git 存储库中。所以我git diff
和 git 向我展示了правительство.рф
.然后我git difftool
设置vimdiff
为 difftool 并意识到我有 ASCIIc
字母правительство.рф
而不是俄语c
。这就是问题所在。