터키어 텍스트가 포함된 utf-8 파일이 있습니다. (내 시스템은 MacOSX입니다)
$ file -I foo.merge
$foo.merge: text/plain; charset=utf-8
다음을 사용하여 일부 터키어 특정 문자를 보려고 하면 문제가 없습니다 grep
.
$ grep 'Emiroğlu' foo.merge
EMİROĞLU Emiroğlu+Noun+A3sg+Pnon+Nom Emiroğlu+Noun+Prop+Noun+A3sg+P3sg+Nom Emiroğlu+Noun+Prop+Noun+A3sg+Pnon+Nom NOTFOUND
less
문제없이 명령을 사용하여 파일을 볼 수도 있습니다 .
그러나 다음을 수행하려고 하면 터키어 문자가 올바르게 표시되지 않습니다.
$ grep 'Emir' foo.merge | less
EMİROĞLU ESC[1;35;40mESC[KEmirESC[mESC[Koğlu+Noun+A3sg+Pnon+Nom ESC[1;35;40mESC[KEmirESC[mESC[Koğlu+Noun+Prop+Noun+A3sg+P3sg+Nom ESC[1;35;40mESC[KEmirESC[mESC[Koğlu+Noun+Prop+Noun+A3sg+Pnon+Nom NOTFOUND
또는 다음 중 하나가 작동하지 않습니다.
$grep 'Emir' foo.merge > foo2.out
$less foo2.out
무엇이 문제일까요? 다음은 몇 가지 추가 정보입니다.
$ locale
LANG="en_US.utf-8"
LC_COLLATE="en_US.utf-8"
LC_CTYPE="en_US.utf-8"
LC_MESSAGES="en_US.utf-8"
LC_MONETARY="en_US.utf-8"
LC_NUMERIC="en_US.utf-8"
LC_TIME="en_US.utf-8"
LC_ALL="en_US.utf-8"
답변1
터키어 텍스트가 좋아 보입니다. 그러나 grep은 출력에 색상 코드를 삽입했습니다.
선택하다:
- grep에 옵션을 추가합니다
--color=never
(색상 제거). - less에 옵션을 추가합니다
-R
(ASCII 색상 코드를 해석하려면 Less에게 지시).