나는 테스트를 자동화하는 데 도움이되는 Ruby 스크립트를 사용 해왔다. 이 잘 작동명령 줄 및 리디렉션이 작동하지 않습니까?
`./program_name #{params} > #{temp_file}`
, 어떻게 파일에 모두 STDOUT 및 STDERR 리디렉션하고 싶습니다 :이 같은 파일에 프로그램의 출력을 리디렉션하고이 스크립트의 일환으로. I는 다음과 같이 할 것이다 :
`./program_name #{params} &> #{temp_file}`
는
&
추가하는 데, 임시 파일은 더 이상 출력을받지 않습니다.
&>
연산자는 명령 줄에서 사용할 때 예상대로 작동하지만 루비 스크립트에서만 문제가 발생하는 것으로 보입니다.
이것이 어떤 이유 일 수 있으며 문제를 해결하는 방법은 무엇입니까?
당신은 shebang에서'/ bin/sh'를 사용하고 있습니까? '/ bin/bash'를 사용하십시오. – Kevin
'./program_name # {params}> # {temp_file} 2> & 1'을 대신 사용해보십시오. – devnull
'&>'은 쉘이나 bash 버전에 따라 작동하거나 작동하지 않을 수 있습니다. – devnull