Subscribe to Windows IT Pro

 

Get Newsletters

  • Get the Latest News
  • Product Updates
  • Helpful Tricks
  • Productivity Tips

Subscribe Now!

October 30, 2007 12:00 AM

Essential Windows PowerShell Commands

Jumpstart your way into scripting with these 10 useful commands
Windows IT Pro
InstantDoc ID #96954
Rating: (4)

Executive Summary:
Windows PowerShell is an extensible, objected-oriented scripting language with full support for variables, looping, and pipelining. Use the Get-Help cmdlet to learn more about other commands. Use Get-Alias to find aliases for commands. PowerShell also has commands for reading from or writing to a file, starting a debugger, and checking event logs.

PowerShell is an extensible, objected-oriented scripting language with full support for variables, looping, and pipelining. Microsoft has made Power- Shell the scripting framework for almost all of its new products. For instance, PowerShell is integrated into the management consoles for both Microsoft Exchange Server 2007 and the upcoming System Center Virtual Machine Manager 2007. However, while PowerShell represents a revolutionary step in Windows scripting, it’s also a very different technology from its predecessors, the Windows command shell and VBScript. PowerShell has a new set of commands (called cmdlets) and command syntax that you need to learn. To help you get up to speed, here are 10 essential PowerShell cmdlets.

10
Get-Help—The Get-Help cmdlet helps you learn how to use PowerShell. Get-Help not only explains the syntax of commands, but it also provides examples of how to use them. The following example shows how to use Get-Help to learn about the PowerShell Help system itself:

get-help

9
cd—You can use the good ole’ cd (Change Directory) command to navigate between folders. Under the covers, cd is an alias for the Set- Location cmdlet. What sets this command apart from the old Windows shell cd command is its ability to navigate the registry. To use cd to go into the HKEY_LOCAL_MACHINE\SOFTWARE subkey, you would enter

cd hklm:\software

8
Get-Alias—PowerShell has more than a hundred different aliases. Plus, you can create custom aliases with the New-Alias cmdlet. Use the Get-Alias cmdlet (or its alias, gal) to list all the Power-Shell aliases along with their native counterparts:

gal | select name, definition

7
Get-Command—You use the Get-Command cmdlet to retrieve a list of the hundreds of available commands. PowerShell’s support for wildcards helps you narrow your searches. The following example retrieves all the commands that begin with get:

get-command get*

6
Set-Content—Set-Content (or its alias, sc) is used to write values to a file. If the specified target file doesn’t exist, this command creates it. For example, the following command writes the value “My data” to the file named mynewfile.txt:

sc c:\temp\mynewfile.txt -value “My data”

5
Get-Content—The counterpart to sc is Get-Content (gc). The gc cmdlet is used to read the contents of a file. For example, the following command displays the contents of the file named mynewfile.txt:

gc c:\temp\mynewfile.txt

4
Set-ExecutionPolicy—By default, PowerShell’s ability to run scripts is disabled; you can only enter commands at the command line. The Set-ExecutionPolicy cmdlet lets you change the security level for running scripts. To enable PowerShell to run any script, you can enter the following command:

set-executionpolicy unrestricted

3
Set-PsDebug—Although PowerShell doesn’t have a full-featured debugger, it does have basic debugging capabilities through the Set-PsDebug cmdlet. Entering the following command will cause a PowerShell script to step through its execution one line at a time:

set-psdebug -step

2
Get-Process—PowerShell has great built-in commands that let you perform many tasks that formerly required resource kits or third-party tools. For example, the Get-Process cmdlet retrieves information about the active processes on a system. Use the following example to list all running processes:

get-process

1
Get-Eventlog—The Get-Eventlog cmdlet retrieves Windows event logs. As with Get-Process, there’s no need for additional utilities. The following example shows how you can retrieve the 10 most recent entries from the system event log:

get-eventlog -newest 10 -logname system

Related Content:

ARTICLE TOOLS

Comments
  • Karen
    4 years ago
    Oct 30, 2008

    If you're looking for a more in-depth discussion about basic PowerShell cmdlets, we ran a series on PowerShell for novices. Here are the articles and what they cover:

    "PowerShell 101, Lesson 1" (InstantDoc ID 97742) introduces you to the concept of cmdlets, then walks you through how to run the most basic PowerShell commands. It also covers how to use PowerShell's online Help files if you run into problems.

    "PowerShell 101, Lesson 2" (InstantDoc ID 97959) shows you how to use a pipeline to create PowerShell statements, which you can use to perform more complex tasks. This lesson also shows you how to format and sort the output from those statements.

    "PowerShell 101, Lesson 3" (InstantDoc ID 98177) introduces you to PowerShell's commonly used operators and wildcards, which let you can create expressions to use in statements.

    "PowerShell 101, Lesson 4" (InstantDoc ID 98447) shows you how to handle strings in PowerShell cmdlets. You'll learn when you need to enclose strings in quotes and whether to use single or double quotes. You'll also learn how to flag, or escape, special characters embedded in quoted strings.

    "PowerShell 101, Lesson 5" (InstantDoc ID 98793) covers variables.

    "PowerShell 101, Lesson 6" (InstantDoc ID 99104) discusses PowerShell providers and built-in drives.

    I hope you find these articles more useful.

    Karen Bemowski, senior editor
    Windows IT Pro, SQL Server Magazine

  • Mitchell
    4 years ago
    Oct 30, 2008

    not so useful.

  • Karen
    4 years ago
    Feb 21, 2008

    A customer service rep will be contacting you to determine why you can't access this article. Sorry for any inconvenience!

  • Bill
    4 years ago
    Feb 20, 2008

    You're kidding, right? So, where are these so-called 10 essential PowerShell cmdlets?

You must log on before posting a comment.

Are you a new visitor? Register Here

advertisement

advertisement

White Papers

Get your Windows 7 deployment off to the right start by implementing PC lockdown. A locked-down environment is easier and cheaper to support since users are less likely to make unnecessary changes to the core system configuration - read more here!

Essential Guides

Is your iSCSI "lossy"? The reality is that most off-the-shelf Ethernet hardware deployed for iSCSI can lose packets, resulting in slow performance or application downtime. Learn how to assess your current iSCSI infrastructure and engineer an advanced iSCSI SAN infrastructure.

Web Seminars

What's the best way to keep your network safe from malware? In this web seminar, security expert Greg Shields suggests an alternative method to the traditional blacklisting approach that is common with anti-virus and anti-malware solutions.

eLearning Series

We bring the experts direct to you to share their real-world perspective and expertise. During each event, three sessions stream in real time, so you can learn, ask questions, and get solutions.
Upcoming event: Getting the Most with Exchange 2010 with Paul Robichaux

Subscribe to Windows IT Pro!

Windows is a trademark of the Microsoft group of companies. Windows IT Pro is used by Penton Media Inc. under license from owner.