Use PowerShell to find last run time of a scheduled task

Here’s a tip from my colleague Ed Wilson (the Microsoft Scripting Guy) about how to use Windows PowerShell to find information about the last run of a scheduled job.

Question: You want to find out when a scheduled job last run. How can you use Windows PowerShell to do this?

Answer: Use the Get-ScheduledTask cmdlet to retrieve a specific scheduled task. Then pipeline the resulting object to the get-ScheduledTaskInfo cmdlet. This technique appears here with the Proxy task.

PS C:\> Get-ScheduledTask -TaskName proxy | Get-ScheduledTaskInfo

Mitch Tulloch is a nine-time recipient of the Microsoft Most Valuable Professional (MVP) award and a widely recognized expert on Windows administration, deployment and virtualization.  For more information see

Ed Wilson is the bestselling author of eight books about Windows Scripting, including Windows PowerShell 3.0 Step by Step, and Windows PowerShell 3.0 First Steps. He writes a daily blog about Windows PowerShell call Hey, Scripting Guy! that is hosted on the Microsoft TechNet Script Center; for more PowerTips check out the Hey, Scripting Guy! blog.


About The Author

5 thoughts on “Use PowerShell to find last run time of a scheduled task”

  1. Thanks for this article. What I’m trying to do is “Get” the LastRunTime specifically and if it ran within the last hour, then I’ll send notification of success, if it didn’t, I’ll send a notification of failure. Notification scripts are not necessary here but here’s what I have:

    $tname = “Export RandR to CSV”

    $xrandr = Get-ScheduledTask $tname | Get-ScheduledTaskInfo

    but $xrandr.LastRunTime gives me nothing. 🙁

  2. reading this 2 years later but you can use the following code:

    (Get-ScheduledTaskInfo “taskname”).lastruntime
    other properties are:

Leave a Comment

Your email address will not be published. Required fields are marked *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Scroll to Top