"여러 파일 grep 하기 + 파일명 보기"의 두 판 사이의 차이

 
(사용자 2명의 중간 판 8개는 보이지 않습니다)
5번째 줄: 5번째 줄:
*H: 파일명 출력(with filename)
*H: 파일명 출력(with filename)
*n: 줄번호 출력(line number)
*n: 줄번호 출력(line number)
*i: 대소문자 구분 없이 찾기(ignore-case)
*i: 대소문자 구분 안함(ignore case)


==방법 1: grep ==
==방법 1: grep ==
<source lang='dos'>
<source lang='console'>
[root@jmnote ~]# grep -Hni Error /var/log/messages*
[root@zetawiki ~]# grep -Hni Error /var/log/messages*
/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: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: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
18번째 줄: 18번째 줄:


== 방법 2: xargs + grep ==
== 방법 2: xargs + grep ==
<source lang='dos'>
<source lang='console'>
[root@jmnote ~]# ls -al /var/log/messages* | awk '{print $NF}' | xargs grep -Hni Error  
[root@zetawiki ~]# 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: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: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
29번째 줄: 29번째 줄:
== 방법 3: find + grep ==
== 방법 3: find + grep ==
/var/log의 messages* 파일들에 대해 Error라는 문자열로 grep한 결과
/var/log의 messages* 파일들에 대해 Error라는 문자열로 grep한 결과
<source lang='dos'>
<source lang='console'>
[root@jmnote ~]# find /var/log -maxdepth 1 -type f -name 'messages*' -exec grep -Hni Error {} \;
[root@zetawiki ~]# 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-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: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
46번째 줄: 46번째 줄:
*[[리눅스에서 파일 찾기]]
*[[리눅스에서 파일 찾기]]


==참고 자료==
==참고==
*http://stackoverflow.com/questions/5914370/list-file-names-based-on-a-filename-pattern-and-file-content-grep
*http://stackoverflow.com/questions/5914370/list-file-names-based-on-a-filename-pattern-and-file-content-grep


[[분류: 리눅스]]
[[분류: 리눅스]]
[[분류: grep]]
[[분류: xargs]]
[[분류: find]]

2020년 6월 3일 (수) 10:50 기준 최신판

1 개요[ | ]

여러 파일 grep 하기
grep 파일 여러 개 보기
grep 파일명 보기
  • H: 파일명 출력(with filename)
  • n: 줄번호 출력(line number)
  • i: 대소문자 구분 안함(ignore case)

2 방법 1: grep[ | ]

[root@zetawiki ~]# grep -Hni Error /var/log/messages*
/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
... (생략)

3 방법 2: xargs + grep[ | ]

[root@zetawiki ~]# 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 방법 3: find + grep[ | ]

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

[root@zetawiki ~]# 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
... (생략)
→ 어느 파일의 몇번째 행에서 발견되었는지가 출력된다.

5 같이 보기[ | ]

6 참고[ | ]

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