If you've downloaded a lot on MajorGeeks, odds are you've come across PowerShell scripts. Advanced users and IT administrators frequently use them, but how will you ever become an advanced user if you don't learn? So, if you're wondering how to get a PowerShell script to work, look no further.
PowerShell is Microsoft's shell and scripting tool. PowerShell typically refers to its command-line interface (CLI) or a DOS prompt, if you will. Most Powershell scripts have switches allowing you to run specific commands but some do the work for you and have an almost GUI like feel.
In Windows 10 you'll want to open a command prompt; Start, Windows Powershell, right-click and "Run As Administrator."
Now, to find out what your permission levels are, type in "Get-ExecutionPolicy."
You will get one of four possible responses:
Restricted: PowerShell won't run any scripts and is the default setting. AllSigned: PowerShell will only run scripts that are signed with a digital signature. RemoteSigned: Similar to AllSigned, PowerShell won't run scripts unless they have a digital signature and will prompt you before it runs a script from a publisher it hasn't seen before. Anything already downloaded and run once won't prompt again. Unrestricted: PowerShell will run anything you throw at it, but it will prompt you first.
So, which one do you choose? It depends on where you got your script. Remember you can always change this again later.
For reference, here is how I set mine to Unrestricted following the steps above:
Now you can run PowerShell scripts. To run a script, open a PowerShell window, type the script's name followed by the script's parameters (if any), and press Enter. If you double-click and PowerShell file, it will open it in Notepad. This is done for security purposes.
Optionally, you can now right-click on any PowerShell script and choose "Run with PowerShell." However, most scripts are written to execute and close, so you won't know what happened if anything. Some scripts with a minimal GUI will work this way, but most require you run it from an elevated Command Prompt and some won't do anything without entering command-line parameters. Each script should provide the command-line parameters in their description.
Here's a video covering everything we just discussed.