![&>가 stdout/err를 리디렉션하는 대신 백그라운드에서 명령을 실행하고 있습니까? [복사]](https://linux55.com/image/176681/%26amp%3B%26gt%3B%EA%B0%80%20stdout%2Ferr%EB%A5%BC%20%EB%A6%AC%EB%94%94%EB%A0%89%EC%85%98%ED%95%98%EB%8A%94%20%EB%8C%80%EC%8B%A0%20%EB%B0%B1%EA%B7%B8%EB%9D%BC%EC%9A%B4%EB%93%9C%EC%97%90%EC%84%9C%20%EB%AA%85%EB%A0%B9%EC%9D%84%20%EC%8B%A4%ED%96%89%ED%95%98%EA%B3%A0%20%EC%9E%88%EC%8A%B5%EB%8B%88%EA%B9%8C%3F%20%5B%EB%B3%B5%EC%82%AC%5D.png)
사전 커밋된 git Hook 스크립트를 보고 있습니다. 제가 고민하고 있는 부분은 다음과 같습니다.
#!/bin/sh
...
testcmd="go test -race ${godirs} "
failed=
${testcmd} &> /dev/null # problematic line
if [ $? -ne 0 ] ; then
failed=1
${testcmd}
fi
godirs
스크립트에서 이전에 빌드된 폴더 목록입니다. 이를 실행하면 testcmd
실행 출력이 약간 지연되는 것을 볼 수 있습니다(다음 프롬프트에 인쇄됩니다). &>
2개의 출력이 리디렉션되지 않는 것 같습니다 . 백그라운드에서 go 테스트를 실행하고 출력을 리디렉션하지도 않습니다.
저는 쉘 스크립팅에 능숙하지 않습니다. 나는 이것을 다시 작성할 수 있다는 것을 알고 있지만 > /dev/null 2> /dev/null
이것은 학습 기회입니다. 계속 사용할 수 있도록 이 문제를 어떻게 해결해야 합니까 &>
?