Grep과 파이프
Coddy Terminal 여정의 기초 섹션에 포함된 레슨. 82개 중 46번째.
grep 명령은 파이프와 함께 사용하면 특히 강력해집니다. 파일 안에서 검색하는 대신, 어떤 명령의 출력이든 필터링하여 필요한 항목을 정확히 찾을 수 있습니다.
디렉터리 목록에서 특정 파일을 찾고 싶다고 상상해 보세요.
ls -l | grep "report"이 명령은 모든 파일을 자세히 나열한 다음, "report"가 포함된 줄만 표시하도록 필터링합니다. 모든 항목을 일일이 살펴보지 않아도 원하는 결과를 얻을 수 있습니다.
grep으로 파이프를 연결하면 텍스트 출력을 생성하는 모든 명령어에서 사용할 수 있습니다. 특정 프로그램과 관련된 실행 중인 프로세스를 찾으려면:
ps aux | grep "python"배운 다른 명령어와 grep을 연결해서 사용할 수도 있습니다. 특정 단어가 포함된 줄이 몇 개인지 세려면:
cat logfile.txt | grep "error" | wc -l이 코드는 파일을 읽고, "error"가 포함된 줄을 필터링한 다음 개수를 셉니다. 앞에서 배운 grep 플래그는 파이프에서도 같은 방식으로 작동합니다. 대소문자를 구분하지 않고 검색하려면 -i를 사용하고, 일치하는 항목을 제외하려면 -v를 사용하세요.
챌린지
쉬움access.log 파일에는 웹 서버 액세스 기록이 들어 있습니다. 파이프를 사용해 필터링하고, 500 오류 상태 코드가 발생한 요청이 몇 개인지 세어 보세요.
다음 작업을 수행하는 단일 명령어를 실행하세요.
cat을 사용해access.log를 읽습니다.grep으로 파이프해500이 포함된 줄을 필터링합니다.wc -l로 파이프해 일치하는 줄의 수를 셉니다.
힌트:
|기호를 사용해 세 명령어를 연결하세요. grep 명령어는 출력을 필터링하고,wc -l은 남은 줄의 수를 셉니다.
직접 해보기
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
기초의 모든 레슨
직접 연습해 보세요: Terminal 플레이그라운드