작업 스케줄러에서 시작된 PowerShell 스크립트를 사용하여 백그라운드에서 실행되는 일련의 SAS 프로그램이 있습니다.PowerShell 4 스크립트에서 백그라운드 작업 제어
각 프로그램이 다른 프로그램을 시작하기 전에 먼저 완료하고 싶습니다.
나는이 사이트에서 찾은 예제를 사용하여 여러 가지 접근법을 시도했지만 아무 것도 작동하지 않습니다. 제가 구체적으로 찾을 수없는 것은 백그라운드에서 실행되는 작업의 상태입니다. 그런 다음 조건문에서 해당 상태를 사용하여 백그라운드에서 실행되는 첫 번째 프로그램이 두 번째 프로그램을 시작하기 전에 완료되었는지 확인합니다. 예를 들어
, 내가 사용하는 경우 :
$job01 = Start-Job -ScriptBlock { & "C:\Program Files\SASHome\SASFoundation\9.4\sas.exe" -sysin "D:\EDM\SASPROGRAMS\ABC.sas" -nosplash -log D:\EDM\SASLOGS -work D:\SASWork }
다음
Get-Job
내가 $job01
이 완료되는 것을 볼 수 있습니다 오른쪽 SAS 프로그램 자체는 완료하는 데 약 10 분 소요 Get-Job
를 실행 한 후 .
백그라운드에서 실행중인 SAS 프로그램이 완료된시기를 결정하는 데 사용할 수있는 cmdlet은 무엇입니까?
편집 해 주셔서 감사합니다. Alex. – ljl