1. find : 하위 폴더에 존재하는 파일을 찾아주는 명령어
find [검색 디렉토리] [옵션] [파일명]
옵션 | 의미 |
-name | 대소문자 구분하여 파일명 검색 |
-iname | 대소문자 구분하지 않고 파일명 검색 |
ex)
find . -name FTPFILES
find ./ftp -iname ftpfiles
ex2) root 경로의 파일 중 size가 5M 이상이고 파일의 상태가 변한지 5일 이상된 것을 찾는다. (s,m,h,d,w 를 단위로 구분. 초,분,시,일,주를 나타냄)
find / -type f -size +5M -mtime +5d
ex3) 위의 예시를 응용. {}: find를 통해 나온 결과를 의미하는 변수. \; : 정상적으로 모든 exec 실행이 끝이 났다는 것을 find에게 알려줌
find / -type f -size +5M -mtime +5d -exec ls -l {} \; (출력을 ls 형태로 출력)
find / -type f -size +5M -mtime +5d -exec rm -rf {} \; (삭제하는 명령
2. grep : 하위 폴더를 포함하여 존재하는 모든 파일에서 원하는 단어를 찾아주는 명령어. 해당 단어를 포함하고 있는 모든 행을 출력한다.
grep [옵션] [패턴(단어)] [파일명]
*단어 내에 공백이 있을 경우에는 " "를 사용
옵션 | 의미 |
-r | 하위 디렉토리까지 검색 |
-i | 비교시 대소문자 구분 안함 |
-l | 패턴이 포함된 파일의 이름 출력 |
-v | 패턴과 일치하지 않는 행만 출력 |
-c | 패턴이 일치하는 행의 수 출력 |
-w | 패턴이 전체 단어와 일치하는 행만 출력 |
-n | 행의 번호를 함께 출력 |
+ A2, B2 옵션으로 해당 패턴의 아래 위 2줄씩 출력되게 하는 옵션도 존재
ex) grep -rni ftpfiles *
ex2) grep -i ftpfiles * --color=auto (특정 패턴에 색상을 입혀 출력하기)
*find&grep 동시 사용 (파일이 아닌 표준입력을 활용하여 특정 파일에서 특정 패턴 찾기)
ex) find ./ -iname "*.sh" | xargs grep -i ftpfiles
'Server > 리눅스' 카테고리의 다른 글
[리눅스 기본 명령어] pwd, cd , ls, cp, mkdir, rm, touch, cat, head, tail (0) | 2020.03.17 |
---|---|
[리눅스 명령어] file, type : file 종류, 명령어 종류 확인 (0) | 2020.03.17 |
[리눅스 명령어] wc : 해당 파일의 단어 수 카운트 (0) | 2020.03.17 |
[리눅스 명령어] mv, rename : 파일명 or 디렉토리명 변경 (0) | 2020.03.17 |
[Linux] 입출력 리다이렉션(Redirection), 파일 디스크립터(File descriptor)와 파이프(Pipe) (0) | 2020.02.09 |