인코딩 iso-8859-1이있는 모든 텍스트 파일을 찾고이를 UTF-8로 변환하려고합니다. {}
가 재 지정 후 발생하기 때문에xargs : 리디렉션 후의 변수 대체
find . -name '*.txt' | xargs grep 'iso-8859-1' | cut -d ':' -f1 |
xargs iconv -f ISO-8859-1 -t UTF-8 {} > {}.converted
(명백한) 문제가 마지막 변수 치환이 작동하지 않습니다, 그리고 xargs
에 속하지 않는 나의 시도는 지금까지입니다. 있는 그대로 a.txt.converted
, b.txt.converted
등이 아닌 {}.converted
이라는 파일 하나만 얻습니다. 어떻게하면됩니까?
참고 : Cygwin에서 iconv가 -o
을 지원하지 않는 것으로 보입니다.
[관련 질문] (http://stackoverflow.com/q/845863/183066)을 참조하십시오. – jcollado
어떤 대답을 받아야할지 모르겠습니다. e.dan과 glenn의 답변은 가장 실용적이지만 Ole Tanges는 가장 심미적으로 즐겁습니다. chorobas도 꽤 좋습니다. 그것에 대해 생각해야합니다. –