명령줄의 출력을 텍스트 파일에 저장하시겠습니까?

명령줄의 출력을 텍스트 파일에 저장하시겠습니까?

데이터를 분석하려면 다음 명령줄을 사용합니다.

unpackdcm -scr ${in} -targ ${out} 

이 명령은 작업 진행 상태와 설명을 화면에 인쇄합니다. 상태를 저장하기 위해 다음을 수행했습니다.

unpackdcm -scr ${in} -targ ${out} >stat.txt

그러나 그것은 작동하지 않았습니다.

답변1

- 기호는 >다음을 나타냅니다.I/O 리디렉션. >stat.txt응용 프로그램의 표준 출력(stdout)을 파일로 리디렉션 stat.txt하므로 셸에 출력이 표시되지 않습니다.

현재 셸 및 파일에서 출력을 원하는 경우 출력을 다음으로 파이프합니다 tee.

your_command | tee stat.txt

또는..

your_command | tee -a stat.txt

..파일에 추가합니다.

응용 프로그램에서 일부 오류가 발생할 수도 있습니다. 이는 대부분 표준 오류에 나타납니다(참조:표준 스트림). 스트림을 리디렉션하려면 다음 구문을 사용하십시오.

your_command 2>error.log

답변2

포착되지 않은 출력이 있는 캡처 전용 운영자에게 출력이 전송될 수 있습니다 stderr.>stdout

대신 bash 쉘을 사용하는 경우 연산자를 사용하여 파일 stderr로 라우팅해 보십시오 . 예를 들어:stdout&>

unpackdcm -scr ${in} -targ ${out} &>stat.txt

만 리디렉션하려면 stderr다음 명령을 사용하십시오.

unpackdcm -scr ${in} -targ ${out} 2>stat.txt

관련 정보