Learn Windows Power Shell
Good summary from Wikipedia:
“Windows PowerShell is an extensible command line interface shell and associated scripting language from Microsoft. It was released in 2006 and is currently available for Windows XP SP2, Windows Server 2003 and Windows Vista. Furthermore, it is built into Windows Server 2008 as an optional feature. [1]
PowerShell integrates with .NET Framework and provides an environment to perform administrative tasks by execution of Cmdlets (pronounced commandlets) which are specialized .NET classes implementing a particular operation, scripts which are composition of cmdlets along with imperative logic, executables which are standalone applications, or by instantiating regular .NET classes.[2] [3] These work by accessing data in different data stores, like filesystem or registry, which are made available to the PowerShell runtime via PowerShell providers.
PowerShell also provides a hosting mechanism with which the PowerShell runtime can be embedded inside other applications, which can then leverage PowerShell functionality to implement certain operations, including those exposed via the graphical interface. This capability has been utilized by Microsoft Exchange Server 2007[2][4] to expose its management functionality as PowerShell cmdlets and providers and implement the graphical management tools as PowerShell hosts which invoke the necessary cmdlets. Other Microsoft applications including Microsoft SQL Server[5] 2008 also expose their management interface via PowerShell cmdlets. Going forward, graphical interface-based management applications on Windows will be layered on top of PowerShell.”
More examples from Wikipedia:
| Windows PowerShell (Cmdlet) |
Windows PowerShell (Alias) |
cmd.exe / COMMAND.COM (MS-DOS, Windows, OS/2, etc.) |
Bash (Unix, BSD, Linux, etc.) |
Description |
|---|---|---|---|---|
| Set-Location | sl, cd, chdir | cd, chdir | cd | Change the current directory |
| Clear-Host | cls, clear | cls | clear | Clear the screen |
| Copy-Item | cpi, copy, cp | copy | cp | Copy one or several files / a whole directory tree |
| Get-Help | help, man | help | man | Help on commands |
| Remove-Item | ri, del, rmdir, rd, rm | del, rmdir, rd | rm, rmdir | Delete a file / a directory |
| Rename-Item | rni, ren | ren | mv | Rename a file / a directory |
| Get-ChildItem | gci, dir, ls | dir | ls | List all files / directories in the (current) directory |
| Write-Output | echo, write | echo | echo | Print strings, variables etc. to screen |
| Pop-Location | popd | popd | popd | Change the current directory to the directory most recently pushed onto the stack |
| Push-Location | pushd | pushd | pushd | Push the current directory onto the stack |
| Set-Variable | sv, set | set | set | Set the value of a variable / create a variable |
| Get-Content | gc, type, cat | type | cat | Get the content of a file |
| Get-Process | gps, ps | tlist[27], tasklist[28] | ps | List all currently running processes |
| Stop-Process | spps, kill | kill[27], taskkill[28] | kill | Stop a running process |
| Tee-Object | tee | ? | tee | Pipe input to a file or variable, then pass the input along the pipeline |
For more information, two fairly good sites (one official):
http://www.microsoft.com/windowsserver2003/technologies/management/powershell/default.mspx
http://en.wikipedia.org/wiki/Windows_PowerShell - i.e. references from above, working on own article.


