아마도
command 2> command.err | less; cat command.err; rm command.err
추가
다음은 주의 깊게 질문을 읽지 않고 위의 OP의 명확한 설명을 읽지 않은 사람들을위한 설명입니다 .
haelix는 지적했다.
stderr 라인은 일반적으로 stdout 라인 사이에 나열됩니다.
그리고 초기 답변자에 대한 의견에서 다음과 같이 썼습니다.
stderr를 stdout으로 리디렉션하는 방법을 알려주고 있지만 그것이 내가 원하는 것이 아닙니다. stderr이 stdout과 덜 섞이는 것을 원하지 않습니다. 덜 나가면 stderr이 터미널에 있기를 바랍니다.
문제는 아마도 플랫폼마다 다르며, 구형 Unix SVR4 플랫폼에서 경험 한 것입니다.
그러한 플랫폼에서 다음과 같은 일을하면
find / ... | less
모든 오류 메시지 (예 : 디렉토리 권한)는 다음과 같이 적게 나타납니다.
stdout line 1
stdout line 2
error message text
stdout line 4
오류 메시지로 인해 출력 라인이 가려집니다.
페이지를 새로 고치면 출력 행이 올바르게 표시되지만 오류 메시지가 손실됩니다. 종료하면 명령 프롬프트를 제외하고 화면이 지워집니다.
당신이 같은 것을하면
find / ... 2>&1 | less
오류 메시지는 표준 출력과 섞여 있습니다. 다시 종료하면 화면이 비어 있습니다.
먼저 표준 출력 만 적게 사용하고 덜 종료 한 후 오류 메시지를 보려면 다른 솔루션이 필요합니다.
그것이 원래의 2 줄 대답에서 잠정적으로 제안한 것입니다.