Windows Powershell is an addition to the old DOS program that is still a part of wiondows. Even in Vista, we can use DOS commands. The only difference being 32 bit operation. Now, DOS shell is used only by system administrators and power users who want to change advanced system settings or use programs like telnet, ftp, etc. It can be run as a separate program or by typing "powershell" in DOS. But all the same. Its just like a part of DOS.
Powershell is a tool which improves its functionality even further. It has a powerful set of tools and commands which can be used for system administration and automation. Previously, we were using JScript ( Java Script ) and VB Script for this purpose. Here, its all available in powershell. It is also more secure than the Java Script and VB Script.
Windows PowerShell is easy to learn, and use. Anyone with a prior knowledge on how to run dos commands can learn this.
Powershell is Object Oriented.
In powershell, any command or variable is called "commandlet", a type of object.
-lists all runnig processes
-stops the process specified.
One example of its power!
Get-Process | Stop-Process
-will stop any process listed by Get-Process by Stop-Process, even if the process is running under "SYSTEM" username. So, your computer restarts automatically (upto windows xp). In Vista, it will happen only if you haven't enabled UAC (User Account Control) which makes any admin, a regular user.
Powershell has the capability to sign the files. Means, think about if we have the capability to sign a batch file! It will be more secure. Powershell do not run script files unless you specify a path. So, no one can hijack a command.
Even if it has many security features, any novice who is excited about doing experiments in this one can severely damage his/her system.
- Powerful tool.
- Object Oriented.
- Easy to learn.
- Can get dangerous in wrong hands, i mean the "Powerful Tool" in advantage itself is the disadvantage.