
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
。這就是問題所在。