검색의 기술 — grep으로 한 줄 찾기
수백 줄 주문 기록에서 '김치전' 한 줄만 뽑아내요. AI가 코드를 찾는 방식도 이거예요.
cat·head·tail로 주문 장부를 들여다봤어요.
그런데 주문이 수백 줄이면? 전부 읽을 순 없죠. 오늘은 '김치전'이 들어간 줄만 쏙 뽑아내는 법을 배웁니다 — grep이에요.문서에서 Ctrl+F(찾기) 해본 적 있죠? 찾는 단어만 형광펜처럼 빛나는 거. grep은 터미널의 Ctrl+F예요.
📚 「검색의 기술 — grep으로 한 줄 찾기」 레슨 내용 전체 텍스트로 훑어보기
cat·head·tail로 주문 장부를 들여다봤어요.
그런데 주문이 수백 줄이면? 전부 읽을 순 없죠. 오늘은 '김치전'이 들어간 줄만 쏙 뽑아내는 법을 배웁니다 — grep이에요.문서에서 Ctrl+F(찾기) 해본 적 있죠? 찾는 단어만 형광펜처럼 빛나는 거. grep은 터미널의 Ctrl+F예요.
grep 단어 파일은 그 단어가 들어간 줄만 추려서 보여줘요. 나머지 줄은 화면에 안 나와요. 파일은 그대로 두고 읽기만 하니까 안전한 명령이에요.먼저 오늘의 주문 장부를 cat으로 통째로 봐요. 줄이 꽤 많죠? 이 안에서 '김치전'만 찾는 게 목표예요.
cat orders.txt — 주문 장부 전체를 펼쳐봐요드디어 grep이에요. grep 찾을단어 파일이름 순서로 칩니다. '김치전'이 든 줄만 나올 거예요.
grep 김치전 orders.txt — 장부에서 김치전이 든 줄만 찾아요장부에 김치전(소문자 느낌)도 있고 영어 메모로 KIMCHI처럼 대문자로 적은 줄도 섞였다고 해봐요.
grep kimchi orders.txt 라고 소문자로 치면, 대문자 KIMCHI 줄도 같이 잡힐까요?
kimchi로 찾으면 KIMCHI는 못 잡아요. 이게 답답할 때 쓰는 스위치가 바로 다음에 배울 -i예요. 👇대문자든 소문자든 다 잡고 싶으면 -i(ignore case, 대소문자 무시) 옵션을 붙여요. 메뉴 이름을 영어로 섞어 적은 장부에서 'tofu'를 찾아봅시다.
grep -i tofu menu-en.txt — 대소문자 구분 없이 tofu를 찾아요Tofu, TOFU, tofu — 표기가 제각각이어도 전부 잡혔어요. -i는 '대소문자 신경 끄기' 스위치예요.주문 장부에서 메모를 Rice, rice 섞어 적었어요. 표기에 상관없이 'rice'가 든 줄을 전부 찾으려면 어떤 옵션을 넣어야 할까요? 빈칸을 채워보세요.
-i(ignore case)예요. 이걸 붙이면 Rice·RICE·rice를 한 그물로 잡아요. mkdir -p에서 봤던 것처럼, grep도 짧은 옵션이 '모드 스위치'예요.이번엔 더 큰 문제. '김치전'이 어느 파일에 적혀 있는지 모를 때예요. 날짜별로 장부가 여러 개라면? -r(recursive, 재귀)을 붙이면 폴더 안 모든 파일을 통째로 뒤져요.
grep -r 김치전 orders/ — orders 폴더 전체에서 김치전을 찾아요orders/mon.txt:)이 같이 붙죠? 여러 파일을 뒤졌으니, 어느 파일의 어느 줄인지 알려주는 거예요.grep -r이, AI가 거대한 코드 속에서 길을 찾는 방법과 똑같아요. 그래서 이걸 알면 Claude가 뭘 하는지 보여요.오늘 한 일을 떠올리며, '장부에서 김치전 찾기'의 자연스러운 순서를 맞춰보세요. (↑↓로 정렬)
grep 단어 파일 — 찾는 단어가 든 줄만 뽑아낸다. -i는 대소문자 무시, -r은 폴더 전체 뒤지기.
수백 줄 장부에서 김치전만 골라내는 이 기술이, Claude가 코드를 뒤지는 방식과 같은 원리라는 걸 기억하세요.|)로 명령을 줄줄이 연결하는 법이에요. 🔗