하모니카 묻고답하기

조회 수 6561 추천 수 0 댓글 6
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

리눅스를 한동안 건드리지 않다가 다시 건드리니 예전에 되던 걸 기억 못하는 것인지 아니면 안되던 것인데 되는 것으로 착각한 것인지 분간을 못하게 되었습니다. 제가 한글이 깨지는 자막파일 인코딩을 바꾸는 쉘스크립트를 짜 보았습니다


#!/bin/bash
# 첫번째 인자는 자막파일
subtitle=$1
iconv -c -f euc-kr -t utf-8 $1 > $HOME/템플릿/subtitleCon
cat $HOME/템플릿/subtitleCon > $1


한개씩 대입 하면 잘 되는데 여러 파일을 인자로 할 경우는 실행이 되지 않더군요. 예를 들어서 '*.smi'로 인자를 주었을 경우는 실행이 되지 않았습니다. 예전에 쉘스크립트를 짜놓고 cp나 find처럼 등록해 놓고 썻던 것 같은데 그걸 검색해도 나오지 않는 것 같습니다.


지금 일일이 경로/스크립트파일 자막파일 이런 식으로 바꾸고 있는데 조금 더 요령껏 바꾸는 방법 없을까요?

  • profile
    레인 2016.02.18 10:53
    for f in *.smi; do
    {스크립트} $i
    done

    이렇게 해보시면 어떨까요?
  • profile
    행복한펭귄 2016.02.18 10:58

    와우! 반복문으로 적용하는 방법도 괜찮은 방법인듯...


    취향에 맞게 사용해 보시길...


    msn034.gifmsn034.gifmsn034.gif

  • profile
    윙혼 2016.02.18 11:08

    알려주셔서 감사합니다. 쉘스크립트도 파고 들면 상당히 방대하던데 그냥 대충 읽어본 정도로 그쳐서 다시 보려니 다 잊어먹은 상태더군요. 처음부터 시작하는 느낌 입니다 ㄷㄷ

  • profile
    행복한펭귄 2016.02.18 10:55

    일괄처리 Shell

    http://stackoverflow.com/questions/4544669/batch-convert-latin-1-files-to-utf-8-using-iconv


    파일 일괄 변경하기

    http://kwakyc87.tistory.com/102


    리눅스 일괄 텍스트 파일 character set 인코딩 변환 

    http://codeheart.tistory.com/77


    euc-kr-인코딩-파일을-utf-8으로-변환하는-방법에-대한-글들-정리

    https://benant.wordpress.com/2012/04/03/euc-kr-%EC%9D%B8%EC%BD%94%EB%94%A9-%ED%8C%8C%EC%9D%BC%EC%9D%84-utf-8%EC%9C%BC%EB%A1%9C-%EB%B3%80%ED%99%98%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95%EC%97%90-%EB%8C%80%ED%95%9C-%EA%B8%80%EB%93%A4-%EC%A0%95/


    <결론>


    보통 윈도우에서 디폴트로 저장한 경우(euc-kr)이 된다.

    이런 경우 리눅스 에디터에서 읽으면 인식하지 못하여 깨진다.

    다음은 *.smi 파일을 euc-kr 로 가정하여 utf-8 로 변환된 파일을 converted 폴더에 생성해주는 것이다.

    주의할 점은 euc-kr 이 아닌 경우도, 이러한 가정을 통해 변환을 하므로 반드시 열어서 확인해야 한다. (gedit *)


    mkdir converted

    find . -iname "*.smi" -type f -exec iconv -f euc-kr -t utf-8 "{}" -o ./converted/"{}" \;

    >> 설명하자면 모든 *.smi 일반 파일에 대해서 iconv 를 통해 euc-kr 을 utf-8 로 변환된 파일을 일괄 생성.


    확장가 smi로 끝나는 모든 파일을 찾아서 iconv를 사용하여 강제적으로 원하는 디렉토리에 코드 변환하여 저장하는 쉡스크립트이옵니다. 위와 같은 쉡스크립트로 모든 문제 해결 볼 수 있습니다.


    변경된 내용을 저장할 디렉토리를 converted가 아닌 다른 이름으로 해도 상관없습니다.


    쉽죠! 이상 끝.


    msn034.gifmsn034.gifmsn034.gif

  • profile
    윙혼 2016.02.18 11:12

    자세하게 알려주셔서 감사합니다. 일일이 수작업으로 끝낸 후지만 나중을 대비해서 최적의 스크립트를 짜 보려고 합니다. 그런데 작업하던 도중 같은 시즌의 드라마에서 euc-kr로 제작된 자막과 utf-8 제작된 자막이 섞여있더군요. 두번 변환하면 복구가 불가능 한 것 같아서 복구 불가능한 것들은 다시 찾아서 다운 받은 후 변환해서 저장해 두었습니다


    서버관련 지식은 먼 나라의 이야기 같았는데 데스크탑으로 응용하려고 하니 머리에 쏙쏙 들어오는 군요.

  • profile
    행복한펭귄 2016.02.18 12:07

    서버 쪽보단 데스크탑 용도로 사용하시니 당연히 머리에 쏙쏙 들어올 수 밖에요. ㅋㅋ


    김태용의 리눅스 쉘 스크립트 프로그래밍 입문

    http://book.naver.com/bookdb/book_detail.nhn?bid=6080977


    책을 참고하시면 많은 도움 받으실 수 있으리라 봅니다.


    영문으로 된 좋은 자료들이 넘치지만, 아마도 기겁할 것으로 보여서 나중에 필요하시면 문의하시고요, 일단은 이 책 정도 수준을 참고하시면 아마도 데스크탑 용도로 사용하시는데는 부족함이 없음줄 아뢰오~~~ msn019.gifmsn019.gifmsn019.gif


List of Articles
번호 제목 추천 수 글쓴이 날짜 조회 수
공지 게시판에 질문하기 전 읽기 - 어떻게 질문을 하는 것이 좋을까? 1 0 Kevin 2019.11.18 13005
1054 설치관련 질문있습니다. 6 0 Henry 2015.03.27 8009
1053 설치는 했는데, 업데이트도 소프트웨어 설치도 안되네요 2 file 0 5월의햇살 2020.08.31 1079
1052 설치단계가 설치준비중에서 멈춥니다. file 0 진리의HK 2016.01.02 6459
1051 설치용도로 사용한 usb 다시 일반 usb메모리로 만들려면 어떻게 해야하나요? 7 0 ddpp2 2019.05.28 1700
1050 설치하려고 부팅시 문제 ::바이오스 사진 올려드렸습니다:: 10 0 레디크 2015.02.16 16085
1049 설치후 부팅시 모니터 화면이 검게 나옵니다 3 0 fkzl 2016.01.30 12677
1048 세번째 질문입니다. 한글관련 2 file 0 잉구탱구 2014.12.06 9325
1047 세벌식 자판 쓰시는 분? 7 0 세벌 2015.01.03 9908
1046 세이프존, 리눅스용 안티랜섬웨어 솔루션 무료 배포 17 0 행복한펭귄 2018.01.15 1114
1045 센트OS(CentOS) 리눅스 커널 업데이트 - 3.10.0-862.2.3.el7, 2.6.32-696.28.1.el6 1 0 la_Nube(누베) 2018.05.13 593
1044 센트OS(CentOS) 리눅스 커널 업데이트 - Spectre Variant 4 0 la_Nube(누베) 2018.05.23 678
1043 소니 바이오 환경에서의 UEFI 2 0 진리의HK 2015.02.22 11149
1042 소스 패키지가 정책에 맞지 않습니다 2 0 류창우 2014.11.28 13824
1041 소통이 필요해 0 세벌 2014.12.05 6991
1040 소프트웨어 매니저 실행이 안됩니다. 5 file 0 jihyeongko97 2020.10.23 1260
1039 소프트웨어 업데이트 누르니까 2 0 레가테스 2015.03.06 7611
1038 손님세션 사용하는 방법이 궁금합니다. 3 0 답답 2015.12.09 7455
1037 솔직히 롤 하나만 리눅로 포팅해도 점유율이 5% 가뿐히 넘을 수 있을텐데 3 0 SSsang 2015.04.25 8686
1036 쇼핑몰 결재시.. 2 file 0 by.꾸~ 2015.06.14 9466
1035 수고하셧습니다....(__*) 0 맨이지롱 2014.12.31 7378
Board Pagination Prev 1 ... 66 67 68 69 70 71 72 73 74 75 ... 123 Next
/ 123
CLOSE