파일 검색(find, grep)
시스템 전체에서 파일과 파일 내 특정 텍스트 패턴을 찾는 강력한 명령인 'find'와 'grep'의 사용법을 알아봅니다.
파일 검색(find, grep)은(는) CoddyKit의 무료 DevOps Bootcamp 강의입니다. 이것은 4개 중 3번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 DevOps Bootcamp 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. DevOps Bootcamp 강의에는 총 4개의 강의가 포함되어 있습니다.
Linux에서 검색하는 이유
파일과 텍스트를 찾는 일은 Linux에서 매일 수행하는 작업입니다. 큰 프로젝트에서 특정 설정 파일이나 코드 한 줄을 찾아야 하는 상황을 생각해 보세요!
강력한 두 명령어를 배워 보겠습니다. find는 파일과 디렉터리를 찾고, grep은 파일 *내용 안에서* 텍스트 패턴을 검색합니다.
`find` 명령어 살펴보기
find 명령어는 디렉터리 계층 구조에서 파일과 디렉터리를 검색합니다. 매우 유연하게 사용할 수 있습니다!
기본 구조는 find [path] [expression]입니다. [path]는 find가 검색을 시작할 위치를 지정하고, [expression]은 무엇을 찾을지 정의합니다.
이름으로 파일 찾기
find를 사용하는 가장 일반적인 방법은 -name 옵션으로 이름을 기준으로 검색하는 것입니다. *와 같은 와일드카드를 사용할 수 있습니다.
현재 디렉터리에서 .txt로 끝나는 모든 파일을 찾아 보겠습니다.
cd /tmp
touch report.txt document.pdf notes.txt
find . -name "*.txt"유형으로 파일 찾기
-type 옵션을 사용하면 find가 어떤 종류의 항목을 찾을지 지정할 수 있습니다.
- 일반 파일은
f - 디렉터리는
d
현재 위치에 있는 모든 디렉터리를 찾아 보겠습니다.
cd /tmp
mkdir mydir anotherdir
touch file.txt
find . -type d크기로 파일 찾기
큰 파일을 찾아야 하나요? -size 옵션을 사용하세요. c(바이트), k(KB), M(MB), G(GB)와 같은 단위를 지정할 수 있습니다.
+10M: 10MB보다 큼-5k: 5KB보다 작음100c: 정확히 100바이트
1KB보다 큰 파일을 찾아 보세요.
cd /tmp
dd if=/dev/zero of=small_file bs=100 count=1 2>/dev/null
dd if=/dev/zero of=large_file bs=2k count=1 2>/dev/null
find . -size +1k`grep` 소개
find가 파일을 찾는 명령어라면, grep(Global Regular Expression Print)은 파일 *내용 안에서* 특정 텍스트 패턴을 검색합니다.
기본 문법은 grep [pattern] [file...]입니다. [pattern]은 찾으려는 텍스트이고, [file...]은 검색할 파일들입니다.
간단한 텍스트에 `grep` 사용하기
간단한 텍스트 파일을 만들고 grep을 사용해 그 안에서 단어를 찾아 보겠습니다. grep은 패턴이 포함된 모든 줄을 출력합니다.
cd /tmp
echo "Hello CoddyKit learners!" > greeting.txt
echo "This is a great lesson." >> greeting.txt
echo "CoddyKit is fun." >> greeting.txt
grep "CoddyKit" greeting.txt`grep` 옵션: -i와 -n
grep에서 유용한 두 가지 옵션을 알아보겠습니다.
-i: 검색할 때 대소문자를 구분하지 않습니다.-n: 일치하는 항목이 발견된 줄 번호를 표시합니다.
대소문자를 구분하지 않고 "coddykit"을 찾은 다음 줄 번호도 확인해 보겠습니다.
cd /tmp
echo "Hello CoddyKit learners!" > greeting.txt
echo "This is a great lesson." >> greeting.txt
echo "coddykit is fun." >> greeting.txt
grep -i -n "coddykit" greeting.txt`find`와 `grep` 함께 사용하기
find와 grep을 함께 사용하면 파일과 *파일 내용*을 검색할 수 있습니다. find의 -exec 옵션을 사용하면 찾은 각 파일에 대해 다른 명령어를 실행할 수 있습니다.
여기서는 모든 .txt 파일을 찾은 다음 그 안에서 "CoddyKit"을 검색합니다.
cd /tmp
echo "Hello CoddyKit" > file1.txt
echo "Hello World" > file2.txt
echo "CoddyKit rocks" > file3.txt
find . -name "*.txt" -exec grep -l "CoddyKit" {} +빠른 확인
여러 파일이 있는 디렉터리가 있습니다. 크기가 50KB보다 크면서 이름이 log.txt 또는 error.log인 모든 파일을 찾으려면 어떤 명령어를 사용해야 할까요?
복습: 파일 검색
잘하셨습니다! Linux에서 파일과 파일 내용을 효율적으로 검색하는 방법을 배웠습니다.
find: 이름, 유형, 크기 등 다양한 조건을 기준으로 파일과 디렉터리를 찾습니다.grep: 대소문자 구분 여부와 줄 번호 표시 등의 옵션을 사용해 파일 *내용 안에서* 특정 텍스트 패턴을 검색합니다.find와grep을 함께 사용해 강력한 내용 검색을 수행하는 방법도 살펴보았습니다.
이 명령어들을 계속 연습해 Linux 탐색 능력을 향상해 보세요!
자주 묻는 질문
“파일 검색(find, grep)” 강의는 무료인가요?
네 — “파일 검색(find, grep)” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 DevOps Bootcamp 강의 전체를 잠금 해제할 수 있습니다. DevOps Bootcamp 강의에는 총 4개의 강의가 포함되어 있습니다.
“파일 검색(find, grep)”에서 뭘 배우나요?
시스템 전체에서 파일과 파일 내 특정 텍스트 패턴을 찾는 강력한 명령인 'find'와 'grep'의 사용법을 알아봅니다. 브라우저에서 직접 실행하는 실습 코드로 DevOps Bootcamp을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
DevOps Bootcamp을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 DevOps Bootcamp은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 3번째 강의입니다.
“파일 검색(find, grep)” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 DevOps Bootcamp 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 DevOps Bootcamp 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.