목록치환 (1)
하츠의 꿈
모든 파일 내의 문자 치환(바꾸기) - find/perl 이용
개발을 하거나 시스템 관리를 하다 보면 특정 디렉터리의 모든 파일 내의 특정 문자를 다른 문자로 치환해야 하는 일이 종종 생긴다. 여러가지 방법으로 치환할 수 있겠지만, 나는 find 와 perl 을 이용하여 이 방법을 해결하곤 하였다. 단, 이 명령은 오류가 없는 이상 화면에 출력하지 않으며, 현재 위치를 잘못 지정하면 큰 낭패를 볼 수 있으므로 주의해야 한다. 아래에서 볼 수 있듯이 perl을 사용하며 "찾을 문자열"이나 "바꿀 문자열"부분에는 정규표현식을 시용할 수 있다. 기본 명령 # find . -exec perl -pi -e 's/찾을문자열/바꿀문자열/g' {} \; - find . : 현재 위치와 그 하위 디렉터리의 모든 내용을 출력한다. - -exec : 출력하는 각 줄의 내용을 그 다음 ..
엔지니어스 마인드/Shell
2009. 4. 27. 09:16