문제

DOS 배치 파일의 파일에 표준 오류를 어떻게 파이프합니까?배관을 사용하여 >> 표준 출력만 파이프하고 표준 오류는 여전히 콘솔로 이동합니다.

내 문제의 세부정보:

자동화된 일일 백업에서 명령줄을 통해 WinRAR을 실행하고 있습니다.다음 예는 WinRar의 출력을 파이프하지만 내가 가장 원하는 오류 출력은 파이프하지 않습니다. winraroutput.txt:

RAR.exe a -esh -r "E:\backup.rar" "D:\*.*" >> winraroutput.txt

문제는 파일이 사용 중일 때 해당 파일이 아카이브에서 누락되었는지 확인하고 이를 .txt 각 옆에 파일 .rar 우리가 다시 돌아가야 할 경우를 대비해 파일을 제출하세요.누락된 파일은 프로그램을 다시 설치하면 쉽게 교체할 수 있으므로 해당 파일이 누락되었음을 알고 있는 한 이를 교체하는 것은 큰 문제가 아닙니다.그러니 꼭 필요한 정보는 아니지만, 필요할 때 알아두면 좋을 정보일 뿐입니다.

표준 오류 출력만 어떻게 출력합니까? .txt 파일을 만들고 가능하지만 필요하지 않은 경우 일반 출력을 콘솔에 그대로 두시겠습니까?

보너스 포인트:

파일이 비어 있는 경우(오류 없음) 파일을 삭제하는 방법을 알려주시면 보너스 포인트가 됩니다!여기에 질문: Windows 배치 파일을 사용하여 파일이 비어 있는 경우 어떻게 검색(및 삭제)합니까?.

도움이 되었습니까?

해결책

이 시도:

   command.exe 2>file.txt

또는 오류를 표시하지 않으려면 nul로 보내십시오.

   command.exe 2>nul

이렇게 하면 콘솔에 std::cout이 남게 됩니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top