파일 내용에서 검색 grep
- 파일 내용에서 특정 내용만 찾을때 사용
- grep [옵션] [패턴] [파일이름]
- [옵션] : 좀 더 디테일한 조건으로 찾을 때 사용
- [패턴] : 찾고 싶은 내용을 입력, 일치하는 내용을 출력. 정규표현식 사용 가능
- [파일 이름] : grep 명령어로 특정 내용을 검색할 파일을 지정한다.
ex ) grep -i root/ect/id
옵션
-i
: 대소문자 무시 (word와 WoRD 를 구분하지 않는다.)
-n
: 줄 번호 표시 (line 넘버를 표시한다.)
-v
: 패턴을 제외한 내용만 출력
-w
: 단어 단위로 검색 (ro 를 검색하면 root 는 찾지않는다.)
-c
: 매칭되는 줄 수 표시
-ㅣ
: 매칭되는 패턴이 있는 파일 이름 출력
패턴
정규표현식 : 어떤 문자를 표현할 때 다양한 특수문자를 이용해 표현하는 방식
^
: 줄의 시작을 지정 (해당 패턴이 줄의 시작인 경우 캡쳐) ex)^root
$
: 줄의 마지막 지정 ex)root$
.
: 한 문자 대치 ex)r..t
*
: 여러 문제 대치 ex)r*
[]
: 패턴 중 한 문자 일치 ex)[rR]oot
[^]
: 패턴 중 제외할 문자 지정 ex)[^T]oot :: T를 제외한 oot 부분 출력
특수문자들을 단순한 문자로만 인식 fgrep
fgrep [옵션] [패턴] [파일이름]
만약 문서에 특수문자가 포함된 경우 여러 특수문자들은 정규표현식으로 인식되기 때문에
해당 정규표현식의 기능으로 검색이 될 수 있다.
이런 경우 fgrep은 여러 특수문자들(*,$,. 등)을 단순한 문자로 인식해서
문서 내에서 해당 특수문자를 찾을 때 사용할 수 있다.
디렉토리 내에서 검색 명령어 find
find [경로] [조건] [아규먼트] [행동]
[경로]
: 어디를 기준으로 검색할 것인지 입력한다. 하위 디렉토리까지 검색
[조건]
: 어떤 조건으로 검색할 것인지 입력한다.
[아규먼트]
: 조건에 맞는 값을 입력해준다.
[행동]
: 검색 결과를 어떻게 처리할 것인지 입력한다.
ex) find /-name file -exec rm -rf {}₩;
만약 행동은 빈칸으로 처리한다면 print 가 default로 입력된다.
조건
name
: 이름으로 검색
type
: 파일의 타입으로 검색, 디렉토리는 d,파일은 f
perm
: 권한으로 검색
user
: 소유자로 검색
size
: 파일 크기로 검색, +는 이상, -는 이하, 단위는 512바이트
c 바이트, k 키로바이트, M 메가바이트, G 기가바이트
atime
: 파일의 마지막 접근 시간으로 검색
mtime
: 파일의 마지막 수정 시간으로 검색
행동
ls
: 자세한 결과 출력
exec [명령어] {} ₩;
: 검색한 파일을 특정 명령어로 실행
ex ) -exec rm -rf {} ₩;
제거하기