출처는 channel.net의 산이형 홈페이지에서 퍼왔습니다.

#! /usr/bin/perl -w
# PERL Scripted by bando
# DATE : 20040805
# Mail : bando(0x40)bando.org
# MSN : bando(0x40)bando.org
# 특정 경로이하 또는 파일에서 특정 문자열을 원하는 문자열로 변경하는 펄 스크립트

if ( $#ARGV != 2 ) {
  &Usage();
}

$Chan_path = $ARGV[0];
$Chan_ch = $ARGV[1];
$Chand_ch = $ARGV[2];
$total = 0;

if ( ! -e $Chan_path) {
  print "$Chan_path 와 같은 파일이나 디렉토리는 없습니다!\n";
  exit 1;
}

@arry = `grep "$Chan_ch" -l -r $Chan_path`;
foreach(0..$#arry) {
  $arry[$_] =~ s/\&/\\&/g;
  $arry[$_] =~ s/\(/\\(/g;
  $arry[$_] =~ s/\)/\\)/g;
  chomp($arry[$_]);
  `perl -p -i -e 's/$Chan_ch/$Chand_ch/g' $arry[$_]`;
  print "$arry[$_] : $Chan_ch => $Chand_ch [OK]\n";
  $total++;
}

print "\nTOTAL : $total 개 변경됨!\n\n";
sub Usage {
print   "\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\n";
print "사용법 : $0 [이 경로이하 또는 파일에서] [이 문자열을] [이 문자열로 변경]\n\n";
print "설명 : 일치하는 문자열을 특정 문자열로 변경한다.\n";
print "예제 : $0 /home localhost 127.0.0.1\n";
print "결과 : /home 디렉토리 이하의 모든 파일에서 localhost문자열을 127.0.0.1문자열로 변경한다.\n";
print "\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n\n";
exit;
}

Creative Commons License
Creative Commons License

이올린에 북마크하기(0) 이올린에 추천하기(0)
이 글의 관련글
2008/09/08 13:03 2008/09/08 13:03
Posted by Jaehun

트랙백 보낼 주소 : http://help.jaehun.org/trackback/24

댓글을 달아주세요

[로그인][오픈아이디란?]

<< PREV : [1] : ... [75] : [76] : [77] : [78] : [79] : [80] : [81] : [82] : [83] : ... [101] : NEXT >>

BLOG main image

카테고리

전체 (101)
(11)
OS (54)
게임 (1)
여행 (8)
영화 (0)
보안 (14)
지식 (9)
취미 (4)
자료실 (0)

최근에 받은 트랙백

달력

«   2009/01   »
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

글 보관함

Total : 26029
Today : 63 Yesterday : 196

374

187

-30 days

today : 63

Statistics Graph

17명이 RSS를 구독하고 있습니다.