[Linux]파일 속성으로 파일 찾기
파일 속성으로 파일을 찾는 명령어는 find이다.
find 명령어
- 파일 이름이나 속성을 이용하여 해당 파일을 찾는다.
사용법
$ find 경로 검색조건 동작
- 경로 : 파일을 찾을 디렉터리의 절대 경로 또는 상대 경로
- 검색조건 : 파일을 찾기 위한 검색 기준, and, or를 이용하여 조건 결합 가능
- 동작 : 파일의 위치를 찾은 후 해당 수행할 동작을 지정하고 기본 동작은 찾으려는 파일의 위치를 절대 경로로 출력
경로
- . : 현재 디렉터리
- ~ : 홈 디렉터리
- / : root 디렉터리
- /etc : /etc 디렉터리
검색조건
- -name 파일명 : 파일명으로 찾기
- -type 타입 : 타입으로 찾기( f : 일반 파일, d : 디렉터리, l : 심볼릭 링크 파일, s : 소켓 파일, b : 블록 장치 특수파일)
- -size n : 파일의 크기가 n블록인 파일들을 찾기(1 = 512바이트)
- -perm nnn : 접근권한이 nnn인 파일 찾기
- -user 사용자명 : 파일의 소유자가 사용자 명인 파일을 찾기
- -atime +n : 접근 시간이 n일 이전인 파일 찾기
- -atime -n : 접근 시간이 n일 이내인 파일 찾기
- -mtime +n : 수정시간이 n일 이전인 파일 찾기
- -mtime -n : 수정시간이 n일 이내인 파일 찾기
- -newer : 기준시간보다 이후에 생성된 파일 찾기
- -a : and
- -o : or
- ! : not
동작
- -exec 명령 {} \; : \;으로 끝나고 찾은 파일을 해당 명령에 맞게 실행
- -print : 화명에 경로명을 출력(안 적어도 출력됨)
- -ls : 긴 목록 형식으로 검색 결과를 출력
예시
$ find ~ -name test.txt
- 홈 디렉터리에서 test.txt인 파일을 찾기
$ find ~ -type d -a -name Linux
- 홈 디렉터리에서 파일의 타입이 디렉터리이고 그 디렉터리 이름이 Linux인것을 찾기(-a는 생략 가능)
$ find ~ -type f -o -name Linux
- 홈 디렉터리에서 파일의 타입이 일반파일이거나 이름이 Linux인 파일 찾기
$ find ~ -name test.txt -exec rm {} \;
- 홈디렉터리에서 파일 이름인 test.txt 파일을 찾아서 삭제
$ find . -perm 755
- 현재 디렉터리에서 접근권한이 755인 파일 찾기
'Linux' 카테고리의 다른 글
[Linux]명령어 스케줄링 (0) | 2021.12.12 |
---|---|
[Linux]파일 정렬 (0) | 2021.12.01 |
[Linux]파일 필터링(파일 내용 검색) (0) | 2021.11.29 |
댓글
이 글 공유하기
다른 글
-
[Linux]명령어 스케줄링
[Linux]명령어 스케줄링
2021.12.12 -
[Linux]파일 정렬
[Linux]파일 정렬
2021.12.01 -
[Linux]파일 필터링(파일 내용 검색)
[Linux]파일 필터링(파일 내용 검색)
2021.11.29