LogOut 로그아웃
관리       글쓰기  ::         블로그  ::   위치로그  ::   태그로그  ::   키로그  ::   방명록

일정한 패턴을 가진 수백개의 파일을 수정해야 할때 여러분은 어떻게 처리하시나요? 어찌보면 나름대로 피곤할 수 있는 일을 처리할 수 있는 방법론입니다.

  1. 아래 예제 처럼, find,grep,xargs,perl,vi 와 같은 명령어 그리고 정규식을 이용한다.
    find . -type f  \( -name "*.txt" -o -name "*.doc" \) | xargs perl -pi -e "s/변경전/변경후/g"
    find . -name "*.txt" -exec perl -pi -e "s/변경전/변경후/g" {} \; 2>/dev/null
    perl -pi -e "s/변경전/변경후/g" *.txt
    vi -c "%s/변경전/변경후/g" -c "wq" test.txt
  2. bash, csh, perl, php 와 같은 스크립트 언어로 변경해주는 코드를 만든다.
  3. java 나 c 와 같은 고급 언어로 변경해주는 코드를 만든다.
  4. Editplus 와 같은 편집기의 바꾸기 기능에서 정규식을 이용한다.
  5. 매크로 기능이나 매크로 프로그램을 이용한다.
  6. 다행히 바꿔주는 전용 유틸리티 프로그램이 있다면 그것을 이용한다.
  7. 편집기에서 찾기, 바꾸기 기능을 이용한다.
  8. 편집기로 일일이 확인해서 바꿔준다.
  9. 부하 직원을 시켜 바꾸게 한다.
  10. 아르바이트를 고용해서 바꾸게 한다.
  11. 이도저도 귀찮다면, 다른 직업을 가질 것을 심각하게 고민해본다.

위에 열거한 방법들 중에서 어느 것이 보다 효율적이고 유익하다라고 단정할 수 없습니다. 각기 나름대로의 장단점을 가지고 있으니 적절하게 혼합해서 사용할 것을 권합니다.

-------------------------------
위의 글은 어느 홈페이지에서 읽은 글입니다.
진정한 의미는 1번과 같은 방안을 가르쳐 주기 위함이겠지만 나름대로 전산쟁이들의 고뇌를 옅볼 수 있는 듯...

크리에이티브 커먼즈 라이센스
Creative Commons License
2008/01/14 20:17 2008/01/14 20:17
Posted by 視畵

tag 태그 ::   ,   
트랙백 주소 :: http://blog.neople.org/trackback/472

엠브리오
 ::   ::  2008/01/15 00:48

유닉스 계열이라면야 1번 정도의 레벨이면 그냥 끝납니다. 2번까지 갈 필요도 없습니다.

그러나 저러한 작업이 1회성이 아니고 혼자만의 작업으로 끝날수 없다면 ?
많은 이기종의 컴퓨터에서 혹은 어느 기업의 네트웍 망도 갖추어지지 않은 수십군데 지점에서 일어난다면 어떨까요?

2번 부터 10번까지는 내용에는 나와 있지 않지만 Windows를 포함한 다양한 OS환경 및 위의 작업에 소요되는 시간 과 비용을 고려하지 않을수 없다는 뜻으로 해석됩니다. 아마도 문제의 해결을 지시받은 사람은 머리깨나 아플겁니다. 11번은 "고민스러우니 차라리 사표쓰는게 낫겠다." 는 표현이겠고요.

뭔가 일을 도모할때는 크고 넓게 봐야 할 필요가 있습니다. 나중에 스케일이 커지면 감당하지 못하는 경우를 많이 봤습니다. 그게 관리자와 개발자의 차이겠지요.

視畵
 ::  2008/01/16 11:56

그러게...

나도 이전 이쪽 일에 관심 많을 때 생각이 많이 드네.
그때는 참...

세월이 많이 흐리니 그것도 추억인 듯...

 

 (우리말 배움터)

BY-NC-ND
블로그 내의 모든 저작물은 크리에이티브 커먼즈 코리아 저작자 표시 - 비영리 - 변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.