현재 look
독일어 움라우트( ä
, ö
, )와 함께 util-linux를 사용하는 데 ü
문제가 있습니다 . 테스트 목적으로 LC_ALL=de_DE.UTF-8
.
고려하다 german.dic
:
Aachen
Rindfleisch
코딩 에서 UTF-8
:
$ file german.dic
german.dic: UTF-8 Unicode text
다음을 사용하여 두 번째 단어를 찾으려고 하면 /usr/bin/look
:
$ look Rindf german.dic
Rindfleisch
ä
독일어 움라우트( )가 포함된 단어를 추가하더라도 해당 단어는 look
여전히 예상대로 작동합니다.
$ cat german.dic
Altäster
Rindfleisch
$ look Rindf german.dic
Rindfleisch
하지만, 단어가 발음 구별 부호로 시작하는 경우:
$ cat german.dic
Ältester
Rindfleisch
$ look Rindf german.dic
분음 부호가 대문자인지 소문자인지는 중요하지 않습니다.
또한 설정을 시도했지만 LC_ALL=de_DE.UTF-8
(확실히 내 시스템에 설치되어 있음) 작동하지 않았습니다.
답변1
Stephen Kitt는 이 오류가 bsdmainutils
.
나는 달리고 있다
Linux archlinux 5.6.10-arch1-1 #1 SMP PREEMPT Sat, 02 May 2020 19:11:54 +0000 x86_64 GNU/Linux
2011년 6월 부터 시작 util-linux
.
존재하다bsd 버전 맨페이지look
다음을 언급하십시오:
입력 파일은 LC_COLLATE를 "C"로 설정하여 정렬해야 합니다.
util-linux 맨페이지에는 이에 대한 내용이 없습니다 look
.
로캘 정렬을 사용하면 C
움라우트가 이스케이프됩니다.
$ LC_COLLATE=C sort german.dic
Rindfleisch
Ältester
ÖBB
(테스트를 위해 Ö로 시작하는 줄을 어떻게 추가했는지 참고하세요).
이 파일에서 이것을 시도하면 look
예상대로 작동합니다.
$ LC_COLLATE=C sort german.dic -o german.dic
$ cat german.dic
Rindfleisch
Ältester
$ look Rindf german.dic
Rindfleisch
$ look Ält german.dic
Ältester
$ look Ö german.dic
ÖBB
도와주셔서 감사합니다!