
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 repo에 스크립트를 추가했습니다. 그래서 나와 git diff
git은 에 차이점이 있음을 보여주었습니다 правительство.рф
. 그런 다음 difftool git difftool
로 vimdiff
설정하고 russian 대신 ASCII c
문자가 있다는 것을 깨달았습니다 . 그게 문제였습니다.правительство.рф
c