여러 Python 스크립트를 차례로 실행해야 하는데 이전 스크립트가 완료되었는지 확인하고 싶습니다. Linux에서 이 작업을 어떻게 수행할 수 있나요?
&&
간단히 or 를 사용하여 ;
수행 할 수 있습니까 |
?
답변1
명령 사이에는
;
마치 명령줄에서 하나씩 입력한 것처럼 실행됩니다. 이전 스크립트가 완료될 때까지 스크립트는 시작되지 않습니다. 이는 각 명령 사이에 개행 문자를 사용하여 다른 줄에 지정하는 것과 같습니다.및
&&
, 동일한 효과를 얻을 수 있지만 스크립트는아니요다음 경우에 실행어느이전 스크립트는 0이 아닌 종료 상태(실패를 나타냄)로 종료되었습니다.다음을 사용하면
||
동일한 효과를 얻을 수 있습니다.오직다음 경우에 실행모두이전 스크립트는 0이 아닌 종료 상태(실패를 나타냄)로 종료되었습니다.를 사용하면
&
모든 스크립트가 거의 동시에 비동기 작업(백그라운드 작업)으로 실행됩니다. 이것은 당신이 원하는 것이 아닐 것입니다.를 사용하면
|
모든 스크립트를 거의 동시에 실행할 수 있습니다. 한 스크립트의 표준 출력 스트림은 파이프라인에 있는 다음 스크립트의 표준 입력 스트림에 연결됩니다. 이것은 당신이 원하는 것이 아닐 것입니다.
"완료"의 의미에 따라 ;
(이전 스크립트의 종료 상태에 상관 없음) 또는 &&
(종료 상태에 관심이 있으며 이전 스크립트가 실행되고 있지 않은 경우에만 이 스크립트를 실행)를 사용하고 싶을 수도 있습니다. 명령 사이의 신호 오류.