All PowerShell Versions Strings enclosed by double-quotes will resolve variables so it is common practice to use code like this: $name = $host.Name...
database-tools
Playing WAV Sounds
PowerShell 3.0 or later To play a WAV sound file in a background process, PowerShell can use the built-in SoundPlayer class. It accepts a path to a...
System Uptime
All PowerShell Versions Windows starts a high definition counter each time it boots, and this counter will return the milliseconds the system runs:...
Finding Attached USB Sticks
All PowerShell Versions If you'd like to know whether there are currently USB storage devices attached to your computer, WMI can help:...
Metadata Overview, by Ron Huizenga
What is Metadata? The term “Metadata” arises frequently when discussing Data Architecture. In short, it is “data about data.” However,...
Test Service Responsiveness
All PowerShell Versions To test whether a particular service is still responding, use a clever trick. First, ask WMI for the service you want to...
Granting Namespace Rights to DM Service Account
community.idera.com/.../Granting-Namespace-Rights-to-Service-Account-for-SQldm-Web-Console-Services.docx Useful document describing how to grant...
WMI Device Inventory
All PowerShell Versions The WMI service can report plenty of details about the computer hardware. Typically, each type of hardware is represented by...
SQL Server – Server Node Reports for Troubleshooting
This is a guest post from Pinal Dave. For many DBAs, restless nights start when end users complain that the application using SQL Server is too...
Get Sleep and Hibernation Times
All PowerShell Versions If you want to find out whether a computer is frequently put into sleep or hibernation mode, here is a function that reads...
Monitoring Disk Queue Length
Recently, I wrote a blog post about performance counters and why the threshold depends (Performance Counters: Why It Depends). In this post, I...
Understanding Sequential Filtering
All PowerShell Versions When you parse text-based log files, or need to filter other types of information, you typically use Where-Object. Here are...
Filtering Hotfix Information
All PowerShell Versions Get-HotFix is a built-in cmdlet that returns the installed hotfixes. It has no parameter to filter on hotfix ID, though....
Getting Shutdown Information
All PowerShell Versions Windows logs all shutdown events in its System event log. From there, you can extract and analyze the information. Here is a...
Copying Command History…
All PowerShell Versions If you played with PowerShell and suddenly realize that you would actually like to keep the commands you played with, try...
Searching Files with Regular Expressions
All PowerShell Versions Get-ChildItem does not support advanced file filtering. While you can use simple wildcards, you cannot use regular...
Searching Files with Regular Expressions
All PowerShell versions Get-ChildItem does not support advanced file filtering. While you can use simple wildcards, you cannot use regular...
Executing Explain Plans Using Rapid SQL by Dan Hotka
This is a guest post from Dan Hotka, Oracle ACE Director. Learn more at his webinar Explain Plan Tips and Techniques. Hi! My name is Dan Hotka. I am...
Getting Files with Specific Extensions Only
All PowerShell versions When you use Get-ChildItem to get a list of files, you may have noticed that the -Filter parameter occasionally returns more...
Correcting ISE Encoding
All PowerShell versions When you run a console application inside the ISE editor, non-standard characters such as “ä” or...
Using the OpenFile Dialog
PowerShell 3.0 and newer Here’s a quick function that works both in the ISE editor and the PowerShell console in PowerShell 3.0 and above):...
Use Group-Object to Create Hash Tables
All PowerShell versions Group-Object can pile objects up, putting objects with the same property together in one pile. This can be quite useful,...
Have PowerShell Cheer You Up!
All PowerShell versions Writing PowerShell code is fun but can be frustrating at times. Here’s a function that makes PowerShell cheer you up....
Logging What a Script Does
All PowerShell versions You probably know that in a PowerShell console (not the ISE editor), you can turn on logging: PS> Start-Transcript This...