{"id":4462,"date":"2022-11-28T11:38:44","date_gmt":"2022-11-28T19:38:44","guid":{"rendered":"https:\/\/SUMMALAI.COM\/?p=4462"},"modified":"2022-11-28T11:38:46","modified_gmt":"2022-11-28T19:38:46","slug":"how-to-fix-powershell-script-wont-execute-as-a-windows-scheduled-task","status":"publish","type":"post","link":"https:\/\/SUMMALAI.COM\/?p=4462","title":{"rendered":"How to Fix PowerShell Script Won&#8217;t Execute as a Windows Scheduled Task"},"content":{"rendered":"\n<p><strong>Issue like below:<\/strong><\/p>\n\n\n\n<p>I have a PowerShell script (that works). In Windows Task Scheduler I created a new task to execute\u00a0<code>\"C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe\"<\/code>, passing the argument as my PS1 script. When the task runs I get a Last Run Result of\u00a0<code>0x1<\/code>.<\/p>\n\n\n\n<p>I updated my script to write to a log file when the script opens and that isn&#8217;t happening. It&#8217;s almost like the task can&#8217;t even open Powershell.exe.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>Solutions<\/strong><a href=\"https:\/\/stackoverflow.com\/posts\/25172234\/timeline\"><\/a><\/p>\n\n\n\n<p>If the problem you&#8217;re having is with Execution Policy, then you can also set the execution policy of a specific invocation of PowerShell. This is what I usually do when executing PowerShell through a scheduled task:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>powershell.exe -NoProfile -NoLogo -NonInteractive -ExecutionPolicy Bypass -File \\\\path\\to\\script.ps1\n\nIf the problem you're having is with Execution Policy, then you can also set the execution policy of a specific invocation of PowerShell. This is what I usually do when executing PowerShell through a scheduled task:\r\n\r\npowershell.exe -NoProfile -NoLogo -NonInteractive -ExecutionPolicy Bypass -File \\\\path\\to\\script.ps1\r\nWhy?\r\n-NoProfile\r\nThis ensures that you don't rely on anything in the user's PowerShell profile, and avoids the overhead of executing that additional code.\r\n\r\n-NoLogo\r\nThis mostly doesn't matter; maybe it does if you're capturing the output of your script. Mostly it makes me feel better.\r\n\r\n-NonInteractive\r\nEnsures that your task won't wait indefinitely if something in your script unexpectedly prompts the user. With this switch, the script will just exit instead; at least you'll have an error code instead of a hanging script.\r\n\r\n-ExecutionPolicy Bypass\r\nYou can use Unrestricted here or whichever execution policy you like. This is probably the one you need the most.\r\n\r\nWhy I prefer setting Execution Policy this way:\r\nBecause I don't want the task to depend on a global non-default setting that you may have other reasons to change in the future. If some other process depends on a different execution policy, then it's not at odds with your task this way.\r\n\r\nPlus it's always nice not to have to change the defaults. Less to remember\/document\/test.<\/code><\/pre>\n\n\n\n<p><strong>Below, please see a example.<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"478\" height=\"399\" src=\"https:\/\/SUMMALAI.COM\/wp-content\/uploads\/2022\/11\/image-1.png\" alt=\"\" class=\"wp-image-4464\" srcset=\"https:\/\/SUMMALAI.COM\/wp-content\/uploads\/2022\/11\/image-1.png 478w, https:\/\/SUMMALAI.COM\/wp-content\/uploads\/2022\/11\/image-1-300x250.png 300w\" sizes=\"(max-width: 478px) 100vw, 478px\" \/><figcaption>Task &#8211; General tabl<\/figcaption><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"318\" src=\"https:\/\/SUMMALAI.COM\/wp-content\/uploads\/2022\/11\/image-2-1024x318.png\" alt=\"\" class=\"wp-image-4465\" srcset=\"https:\/\/SUMMALAI.COM\/wp-content\/uploads\/2022\/11\/image-2-1024x318.png 1024w, https:\/\/SUMMALAI.COM\/wp-content\/uploads\/2022\/11\/image-2-300x93.png 300w, https:\/\/SUMMALAI.COM\/wp-content\/uploads\/2022\/11\/image-2-768x239.png 768w, https:\/\/SUMMALAI.COM\/wp-content\/uploads\/2022\/11\/image-2.png 1210w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><figcaption>Task &#8211; Actions tab<\/figcaption><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Issue like below: I have a PowerShell script (that works). In Windows Task Scheduler I created a new task to execute\u00a0&#8220;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe&#8221;, passing the argument as my PS1 script. When the task runs I get a Last Run Result of\u00a00x1. I updated my script to write to a log file when the script opens and that <a class=\"read-more\" href=\"https:\/\/SUMMALAI.COM\/?p=4462\">Read More<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[10,15],"tags":[1403,1404],"class_list":["post-4462","post","type-post","status-publish","format-standard","hentry","category-microsoft","category-windows-servers","tag-powershell-script-wont-execute-as-a-windows-scheduled-task","tag-powershell-script-wont-execute-as-scheduled-task"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=\/wp\/v2\/posts\/4462","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4462"}],"version-history":[{"count":2,"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=\/wp\/v2\/posts\/4462\/revisions"}],"predecessor-version":[{"id":4466,"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=\/wp\/v2\/posts\/4462\/revisions\/4466"}],"wp:attachment":[{"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4462"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4462"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/SUMMALAI.COM\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4462"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}