나는 사용하고있다SAS, Unix(및 기타)용 분석 패키지입니다. 저는 PuTTY를 사용하여 Unix 시스템에 연결하고 있습니다.
Putty를 통해 10개의 SAS 프로그램을 제출하고 싶습니다. 내 요구 사항은 각 작업이 순차적으로 실행되어야 한다는 것입니다(예: 두 번째 작업은 첫 번째 작업 후에 실행되어야 하고 세 번째 작업은 두 번째 작업이 완료된 후에 실행되어야 합니다). 작업 완료 실행 중에 오류가 발생하면 중지되어야 합니다(예: 두 번째 작업이 실행되는 경우). 작업에 오류가 있으므로 세 번째 작업을 실행하면 안 됩니다.)
현재 아래와 같이 작업을 제출하고 있는데 문제는 위에서 언급한 것처럼 모든 작업이 동시에 시작된다는 점입니다. 한 번에 하나씩 필요합니다.
x sasb -sv sas92 code1.sas;
x sasb -sv sas92 code2.sas;
x sasb -sv sas92 code3.sas;
여기서의 명령 x
은SAS에서 Unix 명령을 실행하는 방법. sasb
은 내가 이런 식으로 실행하는 명령의 이름이며 동시에 모든 작업을 실행하는 것 같습니다.
답변1
bash에서의 실행(원격 서버에서 사용하고 있는 것으로 추측됩니다)은 ;
명령이 차례로 실행되도록 구분됩니다. 내 생각엔 귀하의 코드가 백그라운드 프로세스를 시작하는 것 같습니다.
이것을 사용해 보고 &&
이전 실행이 성공한 경우에만 다음 실행을 허용하십시오.
x sasb -sv sas92 code1.sas &&
x sasb -sv sas92 code2.sas &&
x sasb -sv sas92 code3.sas