Windows IT Pro is the authoritative and independent resource for windows nt, windows 2000, windows 2003, windows xp. Features a collection of resources and magazines for windows IT professionals.
  
  
  Advanced Search 


August 2006

Introducing Windows PowerShell

UNIX administrators won't be laughing anymore
RSS
Subscribe to Windows IT Pro | See More Scripting Articles Here | Reprints | Or get the Monthly Online Pass—only $5.95 a month!
SideBar    Meet Scripting's Everyman

Let's look at another more powerful example of cmdlets. The command
get-OWAVirtualDirectory | 
   set-OWAVirtualDirectory 
   -FileAccessControlOnPublicComputers 
   blockAllExceptTranscoded 
enumerates every OWA virtual directory in an organization, then sets the WebReady Document Viewing controls to block all attachment access, except for files that can be rendered by the Document Viewing layer. Presto! With this one line, you've effectively prevented users on public computers from saving or accessing attachments unless those attachments can be transcoded, which greatly lowers the risk of accidental exposure of confidential data. If you had to apply this setting manually to each OWA virtual directory, it would be easy to miss one or more servers, leaving your protection incomplete.

Favorite Features
As you work with PowerShell, you'll find features that you use constantly. Here are a few of my favorite features:

  • Start-transcript and its partner stop-transcript. The start-transcript cmdlet tells PowerShell to keep a complete log of your interactions with the shell, making it easy to go back to a previous session to find out exactly what you did. You can even use this log to turn sets of commands into a reusable script. The stoptranscript cmdlet tells PowerShell to stop this logging.
  • Get-command with the -synopsis flag. If you don't know what a certain cmdlet does, you can use the get-command cmdlet with the -synopsis flag to get a summary of the specified cmdlet. For example, if you run the command
    get-command -name get-service 
          -synopsis 
    PowerShell will give you a usage synopsis for the get-service cmdlet.
  • Get-excommand. If you don't know what cmdlet you're looking for, you can use get-excommand to find cmdlets that might be of interest. When you use getexcommand with wildcards, it's fairly easy to find what cmdlets exist. For example, the command
    get-excommand *ailbox* 

    returns cmdlets, properties, and methods that are related to mailboxes. To get only cmdlets, you can use the where cmdlet to filter the get-excommand cmdlet's output:
    get-excommand *ailbox* | 
        where {$.Name -eq "Cmdlet"}

Powering Up for PowerShell
Initially, your PowerShell scripts won't be pretty. They're probably going to look like the first scripts you created when you learned your first scripting language (only with slightly different syntax). So, until you get fluent in PowerShell and learn its ways, it might be best to think of PowerShell as a complement to existing scripting methods. The Learning Path box provides some resources to help you with the learning curve. I recommend Andy Oakley's book Monad and the Windows PowerShell Quick Start Web page, which is part of the Windows PowerShell Wiki on Microsoft's Channel9 (http://channel9.msdn.com/wiki/default.aspx/Channel9.WindowsPowerShellQuickStart).

End of Article

   Previous  1  2  [3]  Next  


Reader Comments
FYI: "where" is not a cmdlet that fails to follow the Windows PowerShell strong naming conventions as incorrectly stated in this article; "where" is an alias for the where-object cmdlet.

Bob Wells August 03, 2006 (Article Rating: )


Thanks for the update, Bob-- but "where-object" still doesn't follow the verb-object command structure :)

paulrobichaux August 03, 2006 (Article Rating: )


The command line:

"Get-EventLog application | Where {$_.ID eq "-1030"}"

should read

"Get-EventLog application | Where {$_.EventID -eq "1030"}

The hyphen is misplaced, and the property is EventID rather than ID.

Schell May 25, 2007 (Article Rating: )


Thanks for the fix, Michael!

paulrobichaux May 28, 2007 (Article Rating: )


You must log on before posting a comment.

If you don't have a username & password, please register now.




Top Viewed ArticlesView all articles
WinInfo Short Takes: Week of November 24, 2008

An often irreverent look at some of the week's other news, including a Vista Capable dismissal request, Zune price reductions, Morrow musings, Novell and Microsoft sitting in a tree ... two years later, Yahoo!, IE 6 on Windows Mobile, and so much more ...

Command Prompt Tricks

One reader shares his tip for setting up the command prompt to reflect a remote path. ...

PsExec

This freeware utility lets you execute processes on a remote system and redirect output to the local system. ...


Related Articles Enhance PowerShell's Syntax Display

Working with Shortcuts in Windows PowerShell

Essential Windows PowerShell Commands

PowerShell Scripting

Windows OSs Whitepapers Why SaaS is the Right Solution for Log Management

Related Events PowerShell 101 - eLearning Series

Check out our list of Free Email Newsletters!

Scripting eBooks Keeping Your Business Safe from Attack: Encryption and Certificate Services

Best Practices for Managing Linux and UNIX Servers

Building an Effective Reporting System

Related Scripting Resources Become a VIP member of the Windows IT Pro community!
Get it all with the VIP CD and VIP access. A $500+ value for only $279!

Subscribe to Windows IT Pro!
Solve your toughest technical problems with our experts and access 10,000 + articles online. 30% off

Monthly Online Pass - Only $5.95!
Get instant access to 10,000+ articles from Windows IT Pro Magazine!

TechNet Virtual Labs
Evaluate and test Microsoft's newest products.


Windows IT Pro Home Register FAQ for Windows WinInfo News
Europe Edition About Us Contact Us/Customer Service Media Kit Affiliates / Licensing  
SQL Server Magazine Office & SharePoint Pro Windows Dev Pro IT Job Hound ITTV
IT Library Technology Resource Directory Connected Home Windows Excavator Windows SuperSite 
 
 Windows IT Pro is a Division of Penton Media Inc.
 Copyright © 2008 Penton Media, Inc., All rights reserved. Terms and Use | Privacy Statement | Reprints and Licensing