![2>&1에서 파이프라이닝은 정확히 어떻게 작동하나요?](https://rvso.com/image/168803/2%3E%261%EC%97%90%EC%84%9C%20%ED%8C%8C%EC%9D%B4%ED%94%84%EB%9D%BC%EC%9D%B4%EB%8B%9D%EC%9D%80%20%EC%A0%95%ED%99%95%ED%9E%88%20%EC%96%B4%EB%96%BB%EA%B2%8C%20%EC%9E%91%EB%8F%99%ED%95%98%EB%82%98%EC%9A%94%3F.png)
방금 UNIX를 배우기 시작했기 때문에 질문이 정말 초보자처럼 보일 수 있지만 답변을 주시면 감사하겠습니다. Google의 도움을 받아 이미 한 시간 동안 스스로 해결하려고 노력했지만 성공하지 못했습니다.
cat /etc/shadow 2>&1 | wc -l
이 명령의 효과는 무엇입니까? 내 추측은 다음과 같습니다
- 명령이 인쇄됩니다.줄 수"/etc/shadow"에서 표준 오류가 있으면 표준 출력으로 리디렉션되고 오류 줄이 계산됩니다.
- 명령이 인쇄됩니다.파일"/etc/shadow"의 경우 표준 오류가 있으면 표준 출력으로 리디렉션되고 오류 행이 계산됩니다.
답변1
X>&Y
이다파일 설명자 리디렉션: 이는 fd에 대한 모든 출력 X
이실제로에 들어갑니다 Y
.
2>&1
STDERR의 출력을 STDOUT에 던집니다.
wc -l
STDOUT에 입력 라인 수를 씁니다.
함께, 명령은 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
기타 등등