![sh [duplicate]를 사용하여 STDOUT을 STDERR 1>&2로 리디렉션합니다.](https://linux55.com/image/206164/sh%20%5Bduplicate%5D%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20STDOUT%EC%9D%84%20STDERR%201%26gt%3B%26amp%3B2%EB%A1%9C%20%EB%A6%AC%EB%94%94%EB%A0%89%EC%85%98%ED%95%A9%EB%8B%88%EB%8B%A4..png)
1>&2와 > 순서의 차이점을 이해하는 데 어려움을 겪고 있습니다. 예를 들어, 나는 fi를 가지고 file
있고 file
가지고 있지 않습니다. 그런 다음 diff fie file2
오류가 발생하고 다음과 같이 오류 메시지를 stdout으로 리디렉션하려고 시도했습니다.
$ diff fie file2 > out.log 2>&1
$ cat out.log
diff: fie: No such file or directory
그런데 순서를 반대로 하면
$ diff fie file2 2>&1 > out2.log
diff: fie: No such file or directory
$ cat out2.log
$
출력이 다릅니다. 왜 이런거야? 그리고 STDERR과 STDERR이 2>&1을 통해 병합되면 파일 설명자 2가 비어 있습니까? 누구든지 >& 및 <&에 관한 참조를 지적할 수 있습니까? 감사해요.