For those who work with Microsoft’s Windows must have heard about the term Powershell. Often times I have seen people wondering about what is PowerShell what is the use of it in Windows. Some people think it is a linux terminal equivalent in windows and some think the other way around. So lets gets deep into this and explore what is Powershell.
First of all what is Shell? To keep it simple, Shell is the user interface which gives you fetures to use and access various operating system utilities. A shell can be in command line form or it can be in the form of GUI. It depends shell to shell. Now that you now know what is a shell, let’s continue!
So powershell is a interactive command line shell designed by windows for automating tasks. It is a configuration management framework with a scripting language on its own built on .NET framework by Microsoft.
It is designed to automate tasks such as batch processing and create systems management tools for commonly implemented processes.
It is such a powerful tool that it is used in all operations done inside Microsoft right since 1996.
Powershell capabilities allow you to simplify and automate various administrative tasks. Automation of many opertaions can be done in powershell so that user can multitask at the same time. By powershell, an administrator can find and kill processes in a much simpler way than GUI.
Various command line utilities were introduced in powershell and its scripting language comes with great powers. Multiple scripts and commands can be combined together in powershell to reduce time.
To give you and glimpse of the powers of powershell , let’s say you are managing a large network containing over five hundred servers and you need to implement a new security solution that is dependent on a certain service that has to run on those servers. You could, of course, log in to each server and see if they have that service installed and running. If you use PowerShell , you could get to the bottom of that task in just a few minutes, since the whole operation can be done with only one script that gathers information about the services running on the servers you specify and dumps them into a text file, for instance.
By PowerShell you can:
Background a time-consuming task,
Report all of the USB devices installed
Export NTFS folder permissions
Kill a process in PowerShell
Perform your favorite CMD tasks in PowerShell and much more.
Microsoft also maintains its own PowerShell blog. You can always read here about the recent developments and changes in Powershell.
You can always open powershell by typing it into search box in windows or you can just write powershell in your run(ctrl+r) prompt and windows is kind enough to open it for you.
Just for a general idea you can see all the processes running on your system just by typing Get-Process on your powershell.
And here is a little example how it works.
Yes, this is a tool worthy of the name. PowerShell can easily cause massive configuration changes, positive or negative — so it’s always better to take protective actions first before getting into it. Establish a test environment for your learning experience. Once you get familiar with it, the world will be easy.