Computer >> कंप्यूटर >  >> प्रणाली >> Windows Server

पावरशेल के साथ अनुसूचित कार्य कैसे बनाएं और प्रबंधित करें?

अधिकांश उपयोगकर्ता और व्यवस्थापक taskschd.msc . का उपयोग करते हैं विंडोज़ पर शेड्यूल किए गए कार्यों को बनाने और प्रबंधित करने के लिए ग्राफिकल इंटरफ़ेस कंसोल। हालांकि, विभिन्न स्क्रिप्ट और स्वचालित प्रवाह में, शेड्यूल किए गए कार्यों को बनाने के लिए पावरशेल सुविधाओं का उपयोग करना अधिक सुविधाजनक है। इस लेख में, हम दिखाएंगे कि पावरशेल का उपयोग करके विंडोज शेड्यूलर कार्यों को कैसे बनाया और प्रबंधित किया जाए।

Windows पर PowerShell के माध्यम से शेड्यूल किए गए कार्यों को प्रबंधित करना

अनुसूचित कार्य पावरशेल मॉड्यूल का उपयोग विंडोज 10/विंडोज सर्वर 2016 पर निर्धारित कार्यों को प्रबंधित करने के लिए किया जाता है। आप मॉड्यूल में cmdlets को निम्नानुसार सूचीबद्ध कर सकते हैं:

Get-Command -Module ScheduledTasks

  • अक्षम-अनुसूचित कार्य
  • सक्षम-अनुसूचित कार्य
  • निर्यात-अनुसूचित कार्य
  • गेट-क्लस्टर शेड्यूल्ड टास्क
  • अनुसूचित कार्य प्राप्त करें
  • प्राप्त शेड्यूल्ड टास्कइन्फो
  • नया शेड्यूल किया गया टास्क
  • नई शेड्यूल की गई टास्कएक्शन
  • नए शेड्यूल किए गए टास्क प्रिंसिपल
  • नई शेड्यूल की गई टास्क सेटिंग सेट करें
  • नया शेड्यूल किया गया टास्क ट्रिगर
  • रजिस्टर-क्लस्टर शेड्यूल्ड टास्क
  • पंजीकरण-अनुसूचित कार्य
  • सेट-क्लस्टर शेड्यूल्ड टास्क
  • सेट-शेड्यूल टास्क
  • शुरू-निर्धारित कार्य
  • स्टॉप-शेड्यूल टास्क
  • अपंजीकृत-क्लस्टर शेड्यूल किए गए कार्य
  • अपंजीकृत-अनुसूचित कार्य

पावरशेल के साथ अनुसूचित कार्य कैसे बनाएं और प्रबंधित करें?

संकेत . पहले, बिल्ट-इन कंसोल टूल schtasks.exe विंडोज में शेड्यूलर जॉब बनाने और प्रबंधित करने के लिए इस्तेमाल किया गया था।

Windows PowerShell के साथ शेड्यूल किया गया कार्य बनाना

पावरशेल के आधुनिक संस्करणों में (विंडोज सर्वर 2012/विंडोज 8 पर पावरशेल 3.0 से शुरू होकर), आप नए शेड्यूल किए गए टास्क ट्रिगर का उपयोग कर सकते हैं। और पंजीकरण-अनुसूचित कार्य अनुसूचित कार्यों को बनाने के लिए cmdlets।

मान लीजिए, हमें एक निर्धारित कार्य बनाने की आवश्यकता है जो स्टार्टअप के दौरान (या किसी विशिष्ट समय पर) चलना चाहिए और कुछ पावरशेल स्क्रिप्ट या कमांड निष्पादित करना चाहिए। आइए StartupScript1 नाम का एक शेड्यूल्ड टास्क बनाएं। यह कार्य PowerShell स्क्रिप्ट फ़ाइल C:\PS\StartupScript.ps1 को प्रतिदिन सुबह 10:00 बजे चलाना चाहिए। कार्य को सिस्टम खाते के अंतर्गत उन्नत विशेषाधिकारों (चेकबॉक्स "उच्चतम विशेषाधिकारों के साथ चलाएं") के साथ निष्पादित किया जाएगा।

$Trigger= New-ScheduledTaskTrigger -At 10:00am -Daily
$User= "NT AUTHORITY\SYSTEM"
$Action= New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument "C:\PS\StartupScript1.ps1"
Register-ScheduledTask -TaskName "StartupScript1" -Trigger $Trigger -User $User -Action $Action -RunLevel Highest –Force

यदि कार्य सफलतापूर्वक बनाया गया था, तो स्थिति "तैयार" दिखाई देती है।

पावरशेल के साथ अनुसूचित कार्य कैसे बनाएं और प्रबंधित करें?

आपकी पावरशेल स्क्रिप्ट निर्दिष्ट समय पर चलेगी। यदि आपके कंप्यूटर पर पावरशेल निष्पादन नीति सक्षम है जो PS1 स्क्रिप्ट को निष्पादित होने से रोकती है, तो आप –Bypass के साथ शेड्यूल किए गए कार्य से PowerShell स्क्रिप्ट चला सकते हैं पैरामीटर।

नया कार्य बनाते समय इस कोड का उपयोग करें:

$Action= New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument “-NoProfile -NoLogo -NonInteractive -ExecutionPolicy Bypass -File C:\PS\StartupScript.ps1"

टिप. यदि आप चाहते हैं कि कार्य कंप्यूटर स्टार्टअप के दौरान हर बार चले, तो पहला आदेश इस प्रकार होना चाहिए:
$Trigger= New-ScheduledTaskTrigger -AtStartup
यदि आप उपयोगकर्ता द्वारा लॉग ऑन करने पर कोई कार्य चलाना चाहते हैं:
$Trigger= New-ScheduledTaskTrigger -AtLogon

taskschd.msc खोलें कंसोल और सुनिश्चित करें कि आपके पास टास्क शेड्यूलर लाइब्रेरी में एक नया शेड्यूलर कार्य है।

पावरशेल के साथ अनुसूचित कार्य कैसे बनाएं और प्रबंधित करें?

Powershell 2.0 (Windows 7, Windows Server 2008 R2) में, PowerShell से शेड्यूल किए गए कार्य को बनाने के लिए आप Schedule.Service का उपयोग कर सकते हैं COM इंटरफ़ेस (या पावरशेल संस्करण अपडेट करें)। इस उदाहरण में, हम एक निर्धारित कार्य बनाते हैं जो स्टार्टअप के दौरान पॉवरशेल स्क्रिप्ट वाली विशिष्ट फ़ाइल को निष्पादित करेगा। कार्य NT AUTHORITY\SYSTEM . के साथ किया जाता है विशेषाधिकार।

$TaskName = "NewPsTask"
$TaskDescription = "Running PowerShell script from Task Scheduler"
$TaskCommand = "c:\windows\system32\WindowsPowerShell\v1.0\powershell.exe"
$TaskScript = "C:\PS\StartupScript.ps1"
$TaskArg = "-WindowStyle Hidden -NonInteractive -Executionpolicy unrestricted -file $TaskScript"
$TaskStartTime = [datetime]::Now.AddMinutes(1)
$service = new-object -ComObject("Schedule.Service")
$service.Connect()
$rootFolder = $service.GetFolder("\")
$TaskDefinition = $service.NewTask(0)
$TaskDefinition.RegistrationInfo.Description = "$TaskDescription"
$TaskDefinition.Settings.Enabled = $true
$TaskDefinition.Settings.AllowDemandStart = $true
$triggers = $TaskDefinition.Triggers
#https://msdn.microsoft.com/en-us/library/windows/desktop/aa383915(v=vs.85).aspx
$trigger = $triggers.Create(8)

PowerShell के साथ शेड्यूल किए गए कार्यों को कैसे देखें और चलाएं?

आप विंडोज़ पर सभी सक्रिय शेड्यूल किए गए कार्यों को कमांड के साथ सूचीबद्ध कर सकते हैं:

Get-ScheduledTask -TaskPath | ? state -ne Disabled

किसी विशिष्ट कार्य के बारे में जानकारी प्राप्त करने के लिए:

Get-ScheduledTask CheckServiceState| Get-ScheduledTaskInfo

LastRunTime : 4/7/2021 10:00:00 AM
LastTaskResult : 267011
NextRunTime : 4/8/2021 10:00:00 AM
NumberOfMissedRuns : 0
TaskName : CheckServiceState
TaskPath : \
PSComputerName :

पावरशेल के साथ अनुसूचित कार्य कैसे बनाएं और प्रबंधित करें?

आप इस कार्य को अक्षम कर सकते हैं:

Get-ScheduledTask CheckServiceState | Disable-ScheduledTask

किसी कार्य को सक्षम करने के लिए:

Get-ScheduledTask CheckServiceState | Enable-ScheduledTask

कार्य को तुरंत चलाने के लिए (शेड्यूल की प्रतीक्षा किए बिना), दौड़ें:

Start-ScheduledTask CheckServiceState

पावरशेल के साथ अनुसूचित कार्य कैसे बनाएं और प्रबंधित करें?

टास्क शेड्यूलर लाइब्रेरी से किसी टास्क को पूरी तरह से हटाने के लिए:

Unregister-ScheduledTask -TaskName CheckServiceState

यदि आपको उस उपयोगकर्ता नाम को बदलने की आवश्यकता है जिससे कार्य लॉन्च किया गया है और, उदाहरण के लिए, संगतता मोड, सेट-शेड्यूल टास्क का उपयोग करें। सीएमडीलेट:

$task_user = New-ScheduledTaskPrincipal -UserId woshub\j.abrams' -RunLevel Highest
$task_settings = New-ScheduledTaskSettingsSet -Compatibility 'Win8'
Set-ScheduledTask -TaskName CheckServiceState_PS -Principal $task_user -Settings $task_settings

यदि आपको त्रुटि मिलती है “Set-ScheduledTask: No mapping between account names and security IDs was done जाँच करें कि आप सही उपयोगकर्ता नाम प्रदान करते हैं।

पावरशेल के साथ अनुसूचित कार्य कैसे बनाएं और प्रबंधित करें?

XML फ़ाइलों के माध्यम से शेड्यूल किए गए कार्यों को कैसे निर्यात और आयात करें?

पावरशेल आपको किसी भी शेड्यूल किए गए कार्य की वर्तमान सेटिंग्स को टेक्स्ट एक्सएमएल फ़ाइल में निर्यात करने की अनुमति देता है। तो आप किसी भी कार्य के मापदंडों को निर्यात कर सकते हैं और किसी कार्य को अन्य कंप्यूटरों पर तैनात कर सकते हैं। कार्य को कार्य शेड्यूलर GUI और PowerShell कंसोल दोनों से निर्यात किया जा सकता है।

स्टार्टअपस्क्रिप्ट नाम के साथ कार्य को स्टार्टअपस्क्रिप्ट.एक्सएमएल फ़ाइल में निर्यात करने का आदेश यहां दिया गया है:

Export-ScheduledTask StartupScript | out-file c:\tmp\StartupScript.xml

पावरशेल के साथ अनुसूचित कार्य कैसे बनाएं और प्रबंधित करें?

निर्यात-अनुसूचित कार्य cmdlet PowerShell 2.0 में उपलब्ध नहीं है, इसलिए Windows 7 / Windows Server 2008 R2 में अंतर्निहित टूल schtasks का उपयोग करना बेहतर है कार्य सेटिंग्स को निर्यात करने और परिणाम को एक टेक्स्ट फ़ाइल में पुनर्निर्देशित करने के लिए:

schtasks /query /tn "NewPsTask" /xml >> "c:\tmp\NewPsTask.xml"

निर्धारित कार्य सेटिंग्स को XML फ़ाइल में निर्यात किए जाने के बाद, इसे GUI, SchTasks.exe या PowerShell का उपयोग करके किसी भी नेटवर्क कंप्यूटर पर आयात किया जा सकता है।

पंजीकरण-निर्धारित कार्य cmdlet आपको XML फ़ाइल से कार्य सेटिंग्स आयात करने और इसे पंजीकृत करने में मदद कर सकता है:
Register-ScheduledTask -Xml (Get-Content “\\mun-fs01\public\NewPsTask.xml” | out-string) -TaskName "NewPsTask"
PowerShell 2.0 (Windows 7/Server 2008 R2) में, schtasks टूल का उपयोग करके किसी कार्य को आयात करना आसान होता है। पहला आदेश एक नया कार्य बनाता है। दूसरा इसे तुरंत चलाएगा (ट्रिगर के सक्रिय होने की प्रतीक्षा किए बिना)।

schtasks /create /tn "NewPsTask" /xml "\\Srv1\public\NewPsTask.xml" /ru corp\skrutapal /rp Pa$$w0rd
schtasks /Run /TN "NewPsTask"

कृपया ध्यान दें कि यह उदाहरण उस खाते के क्रेडेंशियल का उपयोग करता है जिसका उपयोग कार्य को चलाने के लिए किया जाता है। यदि क्रेडेंशियल निर्दिष्ट नहीं हैं, क्योंकि वे कार्य में संग्रहीत नहीं हैं, तो आयात करते समय उनसे अनुरोध किया जाएगा।


  1. iPhone पर संपर्क समूह कैसे बनाएं और प्रबंधित करें

    जब आपको संपर्कों के साथ बार-बार संवाद करना होता है, तो आपको उन्हें कुशलता से प्रबंधित करने के तरीके खोजने होंगे। जब आप नियमित रूप से व्यक्तियों के बजाय लोगों के समूह के साथ संवाद करते हैं, तो संपर्क समूह स्थापित करना आपके संपर्कों को प्रबंधित करने का एक शानदार तरीका है। यह न केवल आपको अपने संपर्कों

  1. Windows पर टास्क शेड्यूलर में शेड्यूल किए गए कार्यों में देरी कैसे करें

    हममें से कई लोगों ने कुछ बुनियादी कार्यों और कार्यक्रमों को निष्पादित करने के लिए टास्क शेड्यूलर का इस्तेमाल किया होगा। लेकिन इसके साथ बहुत कुछ है। टास्क शेड्यूलर का उपयोग करके, आप निर्धारित कार्यों के निष्पादन में देरी भी कर सकते हैं। किसी कार्य में देरी करने की सुविधा उपयोगी और उपयोग करने में काफ

  1. Gmail पर टास्क कैसे बनाएं और उनके साथ कैसे काम करें

    टास्क और रिमाइंडर्स बनाने और मैनेज करने के लिए लोग अक्सर थर्ड-पार्टी टूल्स का इस्तेमाल करते हैं। हर ऐप स्टोर पर सैकड़ों वेब और मोबाइल एप्लिकेशन उपलब्ध हैं जो ऐसा कर सकते हैं। और प्रत्येक सही काम करने में दूसरे से बेहतर है। हालाँकि, जब ईमेल क्लाइंट की बात आती है, तो जब कार्यों को बनाने और प्रबंधित क