database-tools

Counting Files Efficiently (Part 1)

A quick and dirty approach for counting files could be this: (Get-ChildItem -Path c:\windows).Count However, it would produce some memory load...

Uncovering TinyUrls’ True Origin

URL shortening is great for Twitter messages but hides the origin. Would you really trust http://bit.ly/e0Mw9w? Here is a simple approach that lets...

Creating Colorful Weather Report

In the previous tip we explained how you can retrieve weather forecast data using Invoke-WebRequest. This was pure black-and-white text. To get a...

Get Weather Forecast

Invoke-WebRequest can easily retrieve web page content for you. If you run it without the –UseBasicParsing parameter, the HTML is even parsed...

Avoid Read-Host

Do you use Read-Host to receive user input? If you do, rethink. Read-Host always prompts a user, and there is no way to automate scripts that use...

Using Online Help

PowerShell does not ship with help files, and installing help files locally requires Administrator privileges. A much easier approach can often be...

Logging Script Output

There are numerous ways to log script output but one especially lazy technique is to run Start-Transcript. In PowerShell 5, this cmdlet is supported...

“Braces Secret” with PowerShell.exe

Here is a little secret that applies to powershell.exe when it is called from within PowerShell or PowerShell Core: when you run powershell.exe and...

Parsing Distinguished Names

Distinguished names are strings, and strings contain powerful ways of parsing data. The most powerful yet simple approach is the Split() method....

Auditing Logons

Have you ever wondered whether someone has logged into your PC while you were away? In a previous tip we explained how you can examine the rich...

Finding UAC Elevations

The Windows “Security” log contains rich audit information. By default, it logs all requests for privilege elevation which occurs when...

How to Correctly Wrap Multiple Results

Whenever a PowerShell function needs to return more than one kind of information, it is important to wrap them as objects. Only then will the caller...

Explore WMI

Get-WmiObject and Get-CimInstance both can provide you with a lot of valuable information, provided you know the name of WMI classes to query. Here...

Find Installed Software

Most installed software registers itself in one of four places inside the Windows Registry. Here is a quick PowerShell function called...

Disable OneDrive in Windows 10

Are you also irritated by the OneDrive icon found in the navigation tree in explorer? If you never use OneDrive, here are two easy-to-use PowerShell...

Alternate Get-Service

The cmdlet Get-Service has a number of drawbacks. For example, there is no parameter to filter running or stopped services, and the results do not...

Robocopy Light

Robocopy.exe is an extremely powerful and versatile built-in command to copy files efficiently from one location to another. Unfortunately, this...

Create Summary Objects for Inventory

Beginning in PowerShell 3, a PSCustomObject can easily combine valuable information that you gathered from different sources. Here is an example...

1 65 66 67 68 69 159