사용자 도구

사이트 도구


os:debian:charsetconvert

여러 파일 문자 치환

기본변환

  • 현재 디렉토리 내에 있는 여러 파일들 속에 있는 문자 변경
  • 치환문의 형식은 다음과 같습니다.
    's/변경할원본대상형식/새로적용시킬형식/g'
  • 예를 들어 현재 디렉토리 내의 파일들 속에 있는 old 문자를 new 문자로 변경한다면
    perl -pi -e 's/old/new/g' *

응용변환

  • find와 perl 을 이용한 방법입니다.
  • 현재 디렉토리를 포함한 하위디렉토리까지의 문자열 변경
  • 치환문 형식은 다음과 같습니다.
    find . -exec perl -pi -e 's/찾을문자열/바꿀문자열/g' {} \; 2>/dev/null 
  • . 대신 직접 디렉토리 경로를 입력하셔도 됩니다.
  • 예를 들어 현재 디렉토리 이하 파일들 속에 있는 old 문자를 new 문자로 변경한다면
    find . -exec perl -pi -e 's/old/new/g' {} \; 2>/dev/null 
  • 현재 디렉토리 아래에 *.php 에 있는 utf-8 문자를 euc-kr로 변환한다.
    # find . -name "*.php" -exec perl -pi -e 's/utf-8/euc-kr/g' {} \;

  • find 에 관련된 유용한 팁입니다.
  • 대소문자 가리지 않고 찾을 때
    find . -exec grep -i -l "찾을문자열" {} \; 2>/dev/null
  • 하위디렉토리 내.. 모든파일 찾기
    find . | xargs grep "문자열"
os/debian/charsetconvert.txt · 마지막으로 수정됨: 2008/11/01 14:16 저자 starlits