개발 환경 및 프로젝트 관리/Linux 개념

표준 출력 리다이렉션(Redirection)

Data Jun 2026. 1. 7. 18:03

앞서 살펴본 것처럼,
명령어의 실행 결과는 기본적으로 **표준 출력(stdout)**을 통해 터미널 화면으로 전달된다.

하지만 이 표준 출력의 목적지는 변경할 수 있다.

 

1. 터미널에 아무것도 출력되지 않는 이유

다음 명령어를 실행해 보자.

ls > list.txt
ls > directory.txt

이때 터미널 화면에는 아무것도 출력되지 않는다.

 

이유는 간단하다.

ls의 출력 결과가
터미널이 아니라 파일로 전달되었기 때문이다.

즉,

  • 출력이 사라진 것이 아니라
  • 출력 목적지가 바뀐 것

이다.

 

2. 파일에 결과가 저장되었는지 확인하기

출력이 제대로 저장되었는지는 다음 명령으로 확인할 수 있다.

cat list.txt
cat directory.txt

이제 터미널 화면에 결과가 출력된다.

이때의 흐름은 다음과 같다.

  • ls → 결과를 파일에 저장
  • cat → 파일 내용을 다시 **표준 출력(stdout)**으로 전달
  • 터미널 → 그 stdout을 화면에 표시

 

3. 리다이렉션(Redirection)이란?

 

이처럼,

표준 출력(stdout)이 향하는 목적지를
터미널이 아닌 다른 곳으로 변경하는 것

리다이렉션(Redirection) 이라고 한다.

대표적인 예시는 다음과 같다.

  • 터미널 → 파일
  • 터미널 → 다른 명령어
  • 터미널 → 네트워크 등

 

4. 정리하면

  • ls는 항상 **표준 출력(stdout)**으로 결과를 보낸다
  • 터미널은 기본 연결 대상일 뿐이다
  • >를 사용하면 stdout의 목적지를 파일로 변경할 수 있다
  • 출력이 안 보인다면, 사라진 게 아니라 이동한 것

리다이렉션은
명령어의 출력 내용을 어디로 보낼지 바꾸는 것이다!