▶ 뭉충닷컴
 
mungchung.com login
Site Search
My Space
주절주절...
공부방
쥔장소개
Board
자유게시판
유용한 정보
자료실
Programming
강좌 & Articles
Spring 3.0
프로그래밍 Tip
   -ASP
   -PHP
   -JavaScript
   -HTML
   -Java/JSP
   -Database
   -Crystal Report
   -Visual Basic
   -이클립스
   -리눅스
   -기타
Windows API (VB)
Spread Sheet 7.0
컴퓨터활용 Tip
Other things
StarCraft 전략
StarCraft 문서
김용(金庸)
Son Q & Dieda

목록화된 특정 단어들을 특정디렉토리에서 모두 검색하려고 만들어봤다.

 

예를 들자면 "뭉충닷컴" 텍스트가 들어간 파일들을 특정디렉토리에서 찾는 방법은 간단하다

리눅스상에서 find명령어를 사용하든 편집기에서 찾기를 이용하면된다.

 

헌데 찾고자 하는 텍스트가 "뭉충닷컴", "네이버", "다음", "네이트" ....등등 이렇게 많아질때는 곤란하다

 

작업하다보니 이런 일이 생겨서(아주 드물지만 -_-) 간단하게 쉘 스크립트 만들었다.

 

#!/bin/bash

export file=$1
export logfile="$1.result.txt"

#파라미터값이 없을경우
if [ -z $1 ] || [ -z $2 ]; then
   echo "검색어목록이 입력된 파일명을 파라미터로 넣어주세요"
   echo "ex) search_content.sh 파일명 검색경로"
   exit
fi

# 검색어 파일이 없을경우
if ! [ -f $file ]; then
   echo "$1 파일이 없습니다."
   exit
fi

# 결과파일이 있을 경우 삭제 처리 함
if test -e $logfile
then
   rm $logfile
fi


cat $file | \

while read line
do
    echo "$line"
    find $2 -type f | xargs grep -il $line > "search_result_temp.txt"

    cat search_result_temp.txt | \
    while read line_temp
    do
        echo "$line,$line_temp" >> $logfile
    done
    rm search_result_temp.txt
done

 파일 이름은 "search_content.sh"로 했다.

이렇게 shell 파일 만들고 난 후 사용방법은 다음과 같다.

 

아래 내용이 포함된 wordlist.txt 파일을 만든다.

뭉충닷컴
네이버
다음
네이트

 

 그런 후 리눅스 상에서 아래와 같이 명령어 입력하면 된다.

search_content.sh wordlist.txt /home/hosting/web/

 

search_content.sh "단어목록파일" "찾고자하는경로"

이렇게 하면 찾고자하는 경로 하위디렉토라까지 파일가지 모두 뒤져서 보여주고 결과 파일은

wordlist.txt.result.txt 파일로 내보낸다.

이 파일 열어보면 아래와 같이 왼편엔 찾고자하는 단어 오른편엔 찾은 파일경로가 나타난다.

뭉충닷컴,/home/hosting/web/aaaa.txt
뭉충닷컴,/home/hosting/web/bbb/cc.txt
뭉충닷컴,/home/hosting/web/test.txt
네이버,/home/hosting/web/kaka/oo/toto/aaaa.txt
네이트,/home/hosting/web/nate/aaa.txt

 

 

 

 


댓글 '1'

뭉충닷컴

2012.07.30 15:54:30
*.91.142.55

위 예제는 특정단어가 포함되는 것을 찾는것인데

만약, 전체단어 일치로해서 파일내용 검색을 하고 싶다면

아래와 같이 w 옵션을 주면 된다.

 

find $2 -type f | xargs grep -iwl $line > "search_result_temp.txt"

문서 첨부 제한 : 0Byte/ 2.00MB
파일 크기 제한 : 2.00MB (허용 확장자 : *.*)
List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 DataBase 질문글은 자유게시판에 작성해 주세요. 뭉충닷컴 2005-09-24 113094
38 리눅스 (13)permission denied: make_sock: could not bind to address 0.0.0.0:80 뭉충닷컴 2017-11-28 37
37 리눅스 주기적으로 아파치/톰캣 프로세스 갯수 로깅 남기기 file [1] 뭉충닷컴 2017-06-09 100
36 리눅스 winscp를 이용한 rcp 파일 업로드 뭉충닷컴 2014-07-31 2734
35 리눅스 특정날짜에 해당하는 파일 찾기 뭉충닷컴 2014-07-25 2248
34 리눅스 일정 시간 간격으로 리눅스 명령어 반복 실행 뭉충닷컴 2014-04-22 4482
33 리눅스 파일 copy 하면서 디렉토리까지 같이 생성하기 뭉충닷컴 2014-02-11 2324
32 리눅스 bash 변수내의 문자열 replace 뭉충닷컴 2013-07-30 2681
31 리눅스 sqlplus 실행결과를 bash 변수에 저장 뭉충닷컴 2013-07-30 4128
30 리눅스 bash shell 사용자 입력 받기 뭉충닷컴 2013-07-12 4520
29 리눅스 오라클 imp/exp에서 where 절 사용하기 뭉충닷컴 2013-07-11 4337
28 리눅스 리눅스에서 OS 버전 확인 뭉충닷컴 2012-11-01 6023
27 리눅스 리눅스 빈디렉토리 삭제 뭉충닷컴 2012-07-30 6784
26 리눅스 특정기간내에 변경된 파일 찾아서 압축 뭉충닷컴 2012-05-04 5345
» 리눅스 리눅스 bash 쉘(shell)로 파일 내용 검색 일괄로 처리하기 [1] 뭉충닷컴 2012-04-04 10442
24 리눅스 chkconfig 및 runlevel 뭉충닷컴 2011-10-19 5820
23 리눅스 find 명령어 여러가지 사용법 (리눅스 파일 찾기) 뭉충닷컴 2011-01-21 15222
22 리눅스 SSL 비밀번호가 다른 2개의 웹서비스를 하나의 아파치 서버에 셋팅 방법 뭉충닷컴 2011-01-12 11416
21 리눅스 리눅스에서 서비스 설정하기. 뭉충닷컴 2010-12-14 9374
20 리눅스 tar 압축/해제의 여러가지 사용법 뭉충닷컴 2010-12-14 10495
19 리눅스 아파치 로그파일 크기가 1기가 이상되면 백업하기 뭉충닷컴 2010-09-29 11290