Creating a termination function
When PowerShell scripts execute on systems, they consume memory and CPU resources. This is especially true if you are scanning directories and leveraging the Get-Content
cmdlet to evaluate files. PowerShell has to load the directory listing in memory, and place the entire contents of the file in memory for processing.
One of the common concerns with deploying a PowerShell script enterprise-wide is being able to terminate the script mid-scan if necessary. While you could use the stop-process
cmdlet or the taskkill.exe
to terminate the PowerShell processes, you may also inadvertently terminate all running PowerShell processes on a system. Without fully executing the script, you may be leaving sensitive scan data on the system.
An alternative to killing the PowerShell processes is to create a function to check to see if a kill
file exists on the system. If that kill
file exists on the system, the script will gracefully terminate. This will allow the script to...