Powershell

Discarding Unwanted Information

If you want to dump results from a command, there are a number of ways. While they all do the same, they have tremendous performance differences:...

Investigating USB Drive Usage

With two lines of PowerShell code, you can dump the USB storage history from your registry and check which devices were used in the past: PS>...

Installing MUI-Packs

The current PowerShell V3 Beta requires an English Windows operating system. That's bad news for anyone running Windows 7 Professional or Home...

Finding All Object Properties

By default, PowerShell only displays a limited set of object properties. To view all available properties, add the following pipeline element:...

Finding True WMI Properties

When you use Get-WmiObject to retrieve WMI objects, PowerShell adds a number of supporting properties. If you want to display only the native WMI...

Finding Current Script Paths

Here's a useful function that you can paste into your scripts. It will tell you the current location the script is executed from. function...

Creating New Scripts in ISE

Often, you first play around with PowerShell commands interactively, and then once those commands do what you want, you can copy them to your script...

Copying Command History to Clipboard

Here's a one-liner that copies all commands from your command history to the clipboard. From there, you could paste them into your favorite...

Check Out Nested Hash Tables

In our last tip we looked at nested arrays (jagged arrays) which may have been a bit confusing. Today, we look at nested hash tables. They may look...

Jagged Arrays

This may not be for everyone: have a look at how you can create "jagged arrays". Here's a jagged array which really is a nested array:...

Making netstat.exe Object-Oriented

Netstat.exe is a useful tool, like many other console-based applications. Take a look how relatively easy it is for PowerShell to take the...

Finding Built-In Administrators Group

Using System User or group names like 'Administrators' in scripts may not always be a good idea because they are localized and may not work...

Using Advanced Breakpoints

PowerShell supports dynamic breakpoints. They trigger when certain requirements are met. Like regular breakpoints, they all require that your script...

Matching Stars

Asterisk serve as a wildcard, so how would you check for the presence of an asterisk? In a previous tip we used regular expressions for this, but...

Debugging PowerShell Scripts

In PowerShell ISE, there are little-known built-in debugging features. Provided you have saved your script to a file, you can press F9 to set...

Stopping Services Remotely

Stop-Service cannot stop services remotely. One easy way of doing so is Set-Service: Set-Service -Name Spooler -Status "Stopped"...

Easier ForEach/Where-Object in PSv3

In the upcoming PowerShell v3 which you can already download as a Beta version, using Where-Object and ForEach-Object becomes a lot simpler. No...

Lunch Time Alert

Here's a fun prompt function that turns your input prompt into a short prompt and displays the current path in your PowerShell window title bar....

Finding Files Owned by a User

Here's a simple filter that will show only those files and folders that a specific user is owner of: filter Get-Owner...

Am I Privileged?

There are numerous ways to find out if a script runs elevated. Here's a pretty simple approach: PS> (whoami /all | Select-String...

Checking User Privileges

whoami.exe is a useful little tool that ships with Windows 7/Server 2008 R2, and it becomes even more useful when you instruct it to output its...

Resolving Paths

Paths can be relative, such as ". \file.txt". To resolve such a path and display its full path, you could use Resolve-Path: PS>...

Synchronizing Current Folder

PowerShell allows its own current path to differ from what Windows thinks is the current path: [IO.Path]::GetFullPath('.') cd $env:windir...

Check PowerShell Speed

To find out how much time a particular cmdlet or command takes, here's a handy little stopwatch that you can use: function Test { $codetext =...

Running a Script Block with Parameters

Maybe you want to design a script that takes code as user input. How would you run that submitted piece of code and pass parameters to it? To run a...

Pinning PowerShell ISE

The integrated PowerShell ISE editor has its own icon and can be pinned to the Windows 7 taskbar, just like PowerShell. Try this: Open PowerShell,...

No Reboots After Updates

If you have set Windows Update to automatic mode, it takes care of detecting, downloading, and installing all necessary updates - fine. However, it...

Locking Drive Content

In a previous tip we showed how you can hide drive letters in Windows Explorer. You may have discovered, though, that a user can still open files...

1 71 72 73 74 75 104