windows-1252
windows-1251
다음과 같은 매핑을 수행하고 싶습니다 .
sed 's/[ÉÖÓÊÅÍÃØÙÇÕÚÔÛÂÀÏÐÎËÄÆÝß×ÑÌÈÒÜÁÞ¸éöóêåíãøùçõúôûâàïðîëäæýÿ÷ñìèòüáþ]/[ЁЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБёйцукенгшщзхъфывапролджэячсмитьбю]/g' input.py > input.py
다음과 같이 문자를 하나씩 바꿀 수 있습니다.
sed 's/î/о/g' input.py > output1.py
sed 's/è/и/g' output1.py > input.py
그러나 한 번에 모든 문자를 수정하는 문자 매핑 구문은 무엇입니까?
답변1
그것이 tr
목적입니다. 이것이 실제로 변경하려는 문자이고 인코딩 문제가 아니라고 가정하면 필요한 것은 다음과 같습니다.
tr '¨ÉÖÓÊÅÍÃØÙÇÕÚÔÛÂÀÏÐÎËÄÆÝß×ÑÌÈÒÜÁÞ¸éöóêåíãøùçõúôûâàïðîëäæýÿ÷ñìèòüáþ' \
'ЁЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮёйцукенгшщзхъфывапролджэячсмитьбю' < input.py > output.py
그러나 나는 당신이 원하는 것이 문자가 아닌 파일의 인코딩을 변경하는 것이라고 생각합니다. 샘플 파일 없이는 이것을 테스트할 수 없지만 아마도 다음과 같을 것입니다.
iconv -f windows-1252 -t windows-1251 input.py > output.py