2012-07-05 3 views
1

스크립트에서 언급 한 타임 스탬프 사이에서 비활성화 할 수있는 작업 스케줄러 작업을 비활성화하기 위해 실행할 수있는 powershell 스크립트를 찾고 있습니다 (.bat 파일을 내부적으로 사용하지 않도록 설정). . Powershell 스크립트를 사용할 수 있습니까?powershell 스크립트를 사용하여 작업 스케줄러 작업을 비활성화 할 수있는 방법

감사합니다.

$tasks = & SCHTASKS /Query /V /FO CSV | ConvertFrom-Csv 

매개 변수의 마법 디코더 링 :/쿼리가 있습니다

답변

3

내가 다시 모든 예약 된 작업 정보 객체를 얻기 위해 CSV 형식으로 출력을 실행 편리한 - 멋쟁이합니다 schtasks를 사용하여 시작 것 작동,/V는 자세한 출력,/FO CSV는 출력 형식입니다. 다음 쉽게 다시 Schtasks는 실행 파일을 사용하여 작업을 활성화하거나 비활성화 할 수 있습니다

$task = $tasks | ? { $_.TaskName -eq "My Batch File" } 

: 이제 객체에 있는지, 당신은 쉽게 당신이 찾고있는 작업 (들)을 찾기 위해 필터링 할 수 있습니다

& SCHTASKS /Change /DISABLE /TN "$Task.TaskName" 

/DISABLE 대신/ENABLE을 사용하면 쉽게 동일한 코드로 작업을 다시 활성화 할 수 있습니다. SCHKTASKS는 예약 된 작업을 만들고 조작하는 데 사용하는 매우 강력한 도구입니다.

참조 : 윈도우 서버와 http://msdn.microsoft.com/en-us/library/windows/desktop/bb736357.aspx

+0

안녕하세요 Goyuix는 Poweshell 꽤 새로운 i'am, 당신은 나 한테 묻는거야, 그래서 가진 2 단계에서 csv 파일을 제공하는 모든 배치 파일을 비활성화하고 싶습니까? – user1411254

+0

1 단계는 CSV를 생성하고이를 $ tasks 변수에 저장합니다. 2 단계는 1 단계의 $ tasks 변수를 데이터 소스로 사용하고 "My Batch File"과 동일한 TaskName을 가진 작업 레코드를 얻기 위해 필터를 적용합니다 - 이름을 스크립트에 적합한 것으로 바꾸려면 . – Goyuix

+0

위대한 !! 그것은 작동하지만 스크립트는''server \ userid에 대한 암호로 실행을 입력하십시오. '라고 묻습니다.이 단계를 건너 뛰고 작업을 비활성화 할 수있는 방법이 있습니까? – user1411254

관련 문제