표준 에러
Coddy Terminal 여정의 기초 섹션에 포함된 레슨 — 82개 중 41번째.
세 번째이자 마지막 데이터 스트림은 표준 오류로, stderr로 약칭됩니다. 이 스트림은 오류 메시지와 경고를 위해 특별히 사용되며, 이를 일반 출력과 분리하여 유지합니다.
명령어가 실패할 때 오류 메시지는 표준 출력이 아닌 표준 오류로 전달됩니다:
ls nonexistent_folder보이는 오류 메시지는 stderr를 통해 출력됩니다. 이 분리는 일반 출력과 독립적으로 오류를 리디렉션할 수 있기 때문에 중요합니다.
표준 오류를 리디렉션하려면 2> 대신 >을 사용하세요:
ls nonexistent_folder 2> errors.txt2는 stderr의 파일 디스크립터 번호를 나타냅니다 (stdout은 1, stderr은 2). 이 명령은 오류 메시지를 errors.txt에 캡처하면서 터미널을 깨끗하게 유지합니다.
두 스트림을 서로 다른 파일로 리디렉션할 수 있습니다:
ls existing_folder nonexistent_folder > output.txt 2> errors.txt성공적인 출력은 output.txt로 가고, 오류는 errors.txt로 갑니다. 두 스트림을 같은 파일로 보내기 위해 2>&1을 사용하세요:
ls existing_folder nonexistent_folder > all_output.txt 2>&1stderr을 stdout이 가는 곳으로 리다이렉트하여 모든 것을 하나의 파일로 결합합니다.
챌린지
쉬움2> 연산자를 사용하여 오류 메시지를 파일로 리디렉션하세요. 다음 두 명령어를 순서대로 실행하세요:
ls를 사용하여missing_folder라는 폴더를 나열하려고 시도하고, 오류 메시지를errors.txt라는 파일로 리디렉션하세요errors.txt의 내용을 표시하기 위해cat을 사용하세요
힌트: 형식은
ls foldername 2> filename입니다. 오류 메시지가 화면에 나타나는 대신 파일로 들어갑니다. 캡처되었는지 확인하기 위해cat을 사용하세요.
치트 시트
표준 오류 스트림(stderr)은 오류 메시지와 경고에 사용되며, 이를 일반 출력과 분리합니다.
표준 오류를 리다이렉션하려면 2>을 사용하세요:
ls nonexistent_folder 2> errors.txt2는 stderr의 파일 디스크립터 번호를 나타냅니다(stdout는 1, stderr은 2).
stdout과 stderr을 서로 다른 파일로 리다이렉션할 수 있습니다:
ls existing_folder nonexistent_folder > output.txt 2> errors.txt두 스트림을 같은 파일로 보내기 위해 2>&1을 사용하세요:
ls existing_folder nonexistent_folder > all_output.txt 2>&1직접 해보기
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.