2>&1에서 파이프라이닝은 정확히 어떻게 작동하나요?

2>&1에서 파이프라이닝은 정확히 어떻게 작동하나요?

방금 UNIX를 배우기 시작했기 때문에 질문이 정말 초보자처럼 보일 수 있지만 답변을 주시면 감사하겠습니다. Google의 도움을 받아 이미 한 시간 동안 스스로 해결하려고 노력했지만 성공하지 못했습니다.

cat /etc/shadow 2>&1 | wc -l

이 명령의 효과는 무엇입니까? 내 추측은 다음과 같습니다

  1. 명령이 인쇄됩니다.줄 수"/etc/shadow"에서 표준 오류가 있으면 표준 출력으로 리디렉션되고 오류 줄이 계산됩니다.
  2. 명령이 인쇄됩니다.파일"/etc/shadow"의 경우 표준 오류가 있으면 표준 출력으로 리디렉션되고 오류 행이 계산됩니다.

답변1

X>&Y이다파일 설명자 리디렉션: 이는 fd에 대한 모든 출력 X실제로에 들어갑니다 Y. 2>&1STDERR의 출력을 STDOUT에 던집니다.


wc -lSTDOUT에 입력 라인 수를 씁니다.


함께, 명령은 cat /etc/shadow 2>&1 | wc -l의 줄 수를 반환합니다 /etc/shadow.게다가오류 줄 수.

만약 너라면~하지 않다해당 오류 줄을 계산하려면 을 사용하세요 cat /etc/shadow | wc -l.

답변2

이것은 직접적인 대답이 아닙니다.

실험을 방해하는 것은 무엇입니까?

실험을 했다면 자신만의 질문에 답했을 수도 있습니다.

다양한 명령 조합을 실행합니다.

cat /etc/shadow
cat /etc/shadows

cat /etc/shadow  2>&1
cat /etc/shadows 2>&1

그런 다음 각각을 파이프로 연결하여wc

cat /etc/shadow    |  wc

기타 등등

관련 정보