Self-Improvement
Linux 명령어(grep, egrep, fgrep, find) 본문
*grep (파일 내에서 특정한 패턴을 검색하여 그 패턴을 포함하는 모든 줄을 화면에 출력)
#grep root /etc/passwd : (root가 들어가 있는 라인을 출력)
#grep -l root /etc/hosts /etc/passwd /etc/group : (세 개의 파일 중에서 root가 포함되어있는 파일만 출력)
#grep -n root /etc/passwd : (검색된 라인의 몇 번째 줄인지도 같이 출력)
#grep -v root /etc/passwd : (해당 검색 단어를 제외하고 모든 라인을 출력)
#grep -i root /etc/passwd : (root의 대소문자를 구분 없이 검색)
#grep -w root file1 : (root라는 단어만 되어있는 라인을 출력)
#grep --color root /etc/paswd : (컬러풀하게 출력)
//패턴
* :
. : 모든 한 글자의 의미 ex) #grep 'no... y /etc/passwd (no...y 가운데 ...의 세 글자가 아무거나 들어간 no...y을 검색)
^root : 첫 번째가 root로 시작되는 것
root$ : 마지막이 root로 끝나는 것
[abc] : #grep 'user0[123]' /etc/passwd (user0,1,2,3을 검색)
//bashrc에 등록
alias grep='grep -i --color' (대소문자 구별 없이 컬러풀하게 미리 등록하면 도움이 됨)
*egrep (grep의 확장 버전, =grep -E)
여러 개의 문자열을 검색할 때 유용
#egrep -i '(문자열 1|문자열 2)'
//예제
#cat /var/log/messages | egrep -i '(warn|err|crit|alert|emerg)'
*fgrep (특수문자를 명령어로 해석하지 않게끔 하는 grep)
#fgrep ^root file1 (^root라는 문자열을 찾기 위한 것)
*find (파일들을 찾는 명령어)
#find / -name core -type -f(일반 파일),-d(디렉터리) : (core라는 파일을 검색)
#find / -user 유저명 -group 그룹명 : (유저와 그룹을 동시에 만족하는 거 찾기)
#find / -mtime 숫자(+7/7/-7)
#find / -perm 퍼미션 숫자(-755/755)
#find / -size 크기(-300M/300M/+300M)
#find / -name core -type f -exec rm {} \; : (-exec 명령어 {} \; =명령어를 실행하라)
//예제
1. 오래된 로그 기록 삭제
#find /Log_Dir1 -name "*.log" -type f -mtime +30 -exec rm -f {} \;
2. 파일시스템이 갑자기 가득 찬 경우(어제오늘 갑자기)
#find /var -mtime -2 -size +512M -type f (lsof CMD)
'리눅스 > 명령어' 카테고리의 다른 글
Linux 편집기 (vi, vim) (0) | 2018.10.21 |
---|---|
Linux 명령어 (gzip/gunzip, bzip2/bunzip2, tar, jar, zip) (0) | 2018.10.21 |
Linux 명령어(mail, wall, cmp, diff, sort, du, file) (0) | 2018.10.21 |
Linux 명령어(chown, chgrp, chmod, umask, SetUID[GID], StickBit) (0) | 2018.10.21 |
Linux 명령어 (head, tail, wc, su, last[log, b], who, w, ln) (0) | 2018.10.21 |