반응형

find는 실제로 리눅스 시스템에서 아주 많이 즐겨 쓰는 명령어 입니다. 

 

이런 명령어를 이용해서 무엇을 할 수 있는지 예제를 통해서 알아보는 시간을 갖도록 하겠습니다.

 

1) find를 이용해서 특정 파일의 특정 문자열 검색

 

find를 이용해서 Souce 코드를 분석 할 수 있습니다. 비단 소스코드 뿐만 아니라 아래 방법을 활용하면 리눅스 시스템에서 보다 쉽게 로그 파일 분석 및 기타 로그 파일을 분석 할 수 있습니다. 

 

find ./ -name "특정 파일 패턴" |xargs grep -n '찾고자 하는 문자열'

root@test:/mnt/linux_kernel/linux-4.19.62# find ./ -name "*.c" |xargs grep -n 'nvme_cmd_write'
./drivers/nvme/host/core.c:602: cmnd->rw.opcode = (rq_data_dir(req) ? nvme_cmd_write : nvme_cmd_read);
./drivers/nvme/host/core.c:1109:        case nvme_cmd_write:
./drivers/nvme/host/trace.c:122:        case nvme_cmd_write:
./drivers/nvme/host/trace.c:123:        case nvme_cmd_write_zeroes:
./drivers/nvme/target/io-cmd-file.c:94: if (req->cmd->rw.opcode == nvme_cmd_write) {
./drivers/nvme/target/io-cmd-file.c:321:        case nvme_cmd_write:
./drivers/nvme/target/io-cmd-file.c:337:        case nvme_cmd_write_zeroes:
./drivers/nvme/target/io-cmd-bdev.c:72: if (req->cmd->rw.opcode == nvme_cmd_write) {
./drivers/nvme/target/io-cmd-bdev.c:227:        case nvme_cmd_write:
./drivers/nvme/target/io-cmd-bdev.c:240:        case nvme_cmd_write_zeroes:
./drivers/nvme/target/admin-cmd.c:162:  log->io

cs[nvme_cmd_write]               = cpu_to_le32(1 << 0);
./drivers/nvme/target/admin-cmd.c:165:  log->iocs[nvme_cmd_write_zeroes]        = cpu_to_le32(1 << 0);

2) 특정 파일 사이즈 크기 삭제 / 복사 /이동 하기

 

find ./  -size +"파일크기"|while read line; do [리눅스 Command] $line ; done

 

이 해당 명령어를 설명하면 다음과 같습니다.

반응형

'리눅스 쉘 스크립트' 카테고리의 다른 글

awk 명령어 예제  (0) 2018.01.16
awk 사용법  (0) 2018.01.16
find 사용하기  (0) 2018.01.15
grep 으로 다중 문자열 검색  (1) 2018.01.15
grep 정규 표현식 패턴 예제 두 가지  (0) 2018.01.15

+ Recent posts