2016-10-21 8 views
1

백그라운드에서 많은 재미있는 일을하는 여러 개의 csh 스크립트를 병렬로 실행하고 있습니다 (각 스크립트는 2 개의 인수를가집니다) .백그라운드에서 실행되는 csh 스크립트의 출력을 리디렉션하는 방법

my_script arg1 arg2 & 
my_script arg3 arg4 & 
... 

이 잘 작동하지만 스크립트의 각 실행이 로그 파일에 표준 출력의 리디렉션하는 것을 좋아하는 것 : 지금까지 내가 그들을 실행하는거야. 내가 아니라 다음과 같은 명령이 작동 할 경우

my_script arg1 arg2 >! somefile.log 

문제는 내가 병렬이 스크립트의 적어도 5 (배경 그들 각각을) 실행해야한다는 것입니다. 나는 다음과 같은 순서를하려고하면 작업이 파견되지만으로보고있다 "일시 중단 (TTY 출력)"및 로그 파일이 업데이트되지 않은 :이 문제에

my_script arg1 arg2 >! somefile.log & 
my_script arg3 arg4 >! somefile1.log & 
my_script arg5 arg6 >! somefile2.log & 
.... 

어떤 아이디어. 오 ... 또한 나는 bash 나 다른 것으로 전환 할 수없는 unfortunatelly CSH를 사용해야한다고 언급하는 것을 잊어 버렸습니다.

감사합니다.

+1

당신이'nohup' 및 표준 출력 경로 재 지정 "> &"실행 시도 해 봤나 터미널 모드를 관리하기 위해 시도 할 수

nohup my_script arg1 arg2 </dev/null>! somefile.log & 

시도하세요? – GMichael

+0

예, 두 옵션 모두 여전히 동일한 결과를 시도했습니다. 감사! – Birbal

답변

1

또한

stty -tostop 

+0

굉장해! 고마워요! 작동하는 것 같습니다. – Birbal

+0

@Birbal : 어떤 트릭 (또는 둘다)이 효과가 있었습니까? 모두에게 행운을 빕니다. – shellter

+0

첫 번째 옵션이 작동했습니다 ... 두 번째 옵션을 시도하지 않았습니다. – Birbal