2016-11-07 1 views
0

저는 우분투 및 C++에서 경쟁 프로그래밍의 판사를 씁니다. 내가하고 싶은 일은 실행중인 프로그램의 시간 제한을 설정하고 런타임 오류 (있는 경우)를 텍스트 파일로 인쇄하는 것입니다. 예를 들어 나는 ERRORS.TXT 파일에 오류를 ./test 3 초 실행하기위한 시간 제한을 설정하는 명령의이 종류를 사용하고 쓰고 싶습니다프로세스에 대한 시간 제한을 설정하고 stderr를 텍스트 파일에 작성하십시오.

timeout 3 { ./test; } 2> errors.txt; 

그러나 터미널은 말한다 :

bash: syntax error near unexpected token `}' 

이 두 가지 요구 사항 (시간 제한 설정 및 파일에 오류 쓰기)을 충족 시키려면 어떻게 명령을 작성할 수 있습니까?

답변

1

은 당신이 쓰고 싶은 수행

{ timeout 3 ./test; } 2> errors.txt 

또는 기본적으로 더 :

timeout 3 ./test 2> errors.txt 
+0

감사합니다! 첫 번째 파일은 작동하지만 두 번째 파일은 작동하지 않습니다. 왜냐하면 ./test가 세그먼테이션 오류를 발생 시키므로 errors.txt 파일에 "Segmentation fault"가 인쇄되지 않기 때문입니다. – toilanvd

관련 문제