여러 파일 grep 하기 + 파일명 보기

Jmnote (토론 | 기여)님의 2013년 9월 29일 (일) 03:41 판 (Jmnote 사용자가 여러 파일 grep 하기, grep 파일명 보기 문서를 여러 파일 grep 하기 + 파일명 보기 문서로 옮겼습니다)

1 개요

여러 파일 grep 하기
grep 파일 여러 개 보기
grep 파일명 보기

2 방법 1: find + grep

/var/log의 messages* 파일들에 대해 Error라는 문자열로 grep한 결과

[root@jmnote ~]# find /var/log -maxdepth 1 -type f -name 'messages*' -exec grep -Hni Error {} \;
/var/log/messages-20130706:1079:Jul  6 19:53:07 localhost NetworkManager[1813]: <warn> bluez error getting default adapter: The name org.bluez was not provided by any .service files
/var/log/messages:1104:Sep 15 16:20:48 localhost NetworkManager[1817]: <warn> bluez error getting default adapter: The name org.bluez was not provided by any .service files
/var/log/messages:2248:Sep 27 08:19:16 localhost NetworkManager[1862]: <warn> bluez error getting default adapter: The name org.bluez was not provided by any .service files
/var/log/messages:3420:Sep 28 11:26:54 localhost NetworkManager[1747]: <warn> bluez error getting default adapter: The name org.bluez was not provided by any .service files
... (생략)
→ 어느 파일의 몇번째 행에서 발견되었는지가 출력된다.

3 방법 2: xargs + grep

[root@jmnote ~]# ls -al /var/log/messages* | awk '{print $NF}' | xargs grep -Hni Error 
/var/log/messages:1104:Sep 15 16:20:48 localhost NetworkManager[1817]: <warn> bluez error getting default adapter: The name org.bluez was not provided by any .service files
/var/log/messages:2248:Sep 27 08:19:16 localhost NetworkManager[1862]: <warn> bluez error getting default adapter: The name org.bluez was not provided by any .service files
/var/log/messages:3420:Sep 28 11:26:54 localhost NetworkManager[1747]: <warn> bluez error getting default adapter: The name org.bluez was not provided by any .service files
/var/log/messages-20130706:1079:Jul  6 19:53:07 localhost NetworkManager[1813]: <warn> bluez error getting default adapter: The name org.bluez was not provided by any .service files
... (생략)

4 같이 보기

5 참고 자료

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}