• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
Think PowerShell

Think PowerShell

PowerShell for IT Pros

  • About
    • Who I Am
    • Why I Blog
    • Privacy Policy
  • Resources
    • More PowerShell Sites
    • Post Series Index
  • Get Help
  • Show Search
Hide Search

General

Hide PowerShell Progress Bars

Aaron Rothstein · October 18, 2017 · 3 Comments

PowerShell progress bar in action.
PowerShell progress bar in action.

PowerShell progress bars don’t hurt anything, but they don’t always add value. Here’s how to hide them.

Progress Bars: What are they good for?

We are a species that craves to know the current state of things, and if we can’t be told that, at least we wan’t to know SOMETHING is happening. And because of this fundamental truth, we have spinning circles, hour glasses of old, and progress bars.

My favorite progress bars are the ones that aren’t actually progress bars at all because they don’t actually tell you far how you have progressed through a process. They are more like animated gifs of a bar filling to let you know that SOMETHING is happening, much like the spinning wheel.

PowerShell progress bars are at least true progress bars; the increase in percentage and the bar itself is tied back to underlying execution logic. So if you feel compelled to watch, at least you are seeing an actual progress status.

[Read more…] about Hide PowerShell Progress Bars

PowerShell Splatting: What is it, Why Use It

Aaron Rothstein · October 17, 2017 · 5 Comments

Splatting with a hash table.
Splatting with a hash table.

Make your PowerShell scripts easier to read with splatting.

No one likes horizontal scrolling

The format of PowerShell cmdlets make them universally easy to use. Enter the cmdlet name, then enter the various parameter switches and values for those parameters. For a lot of commands, everything can fit cleanly on one line and within either the standard 80 character width of a standard prompt or the full screen width of your favorite editor.

However, there are going to be times you want to specify a LOT of parameters, and some of those parameter values may be lengthy in nature. The last thing you want to do though is have to start scrolling sideways or trying to wrap your “one-liner” to read it.

[Read more…] about PowerShell Splatting: What is it, Why Use It

Configuring Windows DHCP, Part 3: Creating DHCP Reservations

Aaron Rothstein · August 22, 2017 · 2 Comments

A DHCP reservation.
A DHCP reservation.

Need to mix the convenience of DHCP with the consistency of a static IP? Use a DHCP reservation, and create them with PowerShell.

DHCP reservations explained

DHCP empowers us to automatically assign IP addresses to clients while adhering to standardized rules (address space, lease duration, DNS servers, etc). For most clients, we typically don’t care what IP address the client ends up with on any given day, but for other devices consistently connected to the network, there are benefits to having the device get the same IP every time. A prime example that everyone can relate to is a printer. If you have the printer shared through a print server, the print server needs to be able to consistently talk to the printer on a known IP address.

“A DHCP reservation is a permanent IP address assignment. It is a specific IP address within a DHCP scope that is permanently reserved for leased use to a specific DHCP client” (tech-faq.com).

In the previous post we created DHCP scopes. Let’s see how we can use PowerShell to create a DHCP reservation within one of those scopes.

[Read more…] about Configuring Windows DHCP, Part 3: Creating DHCP Reservations

Configuring Windows DHCP, Part 2: Creating DHCP Scopes

Aaron Rothstein · August 21, 2017 · Leave a Comment

DHCP Scopes
DHCP Scopes

Use PowerShell to create dynamically assigned ranges of IP addresses using DHCP scopes.

What is a DHCP scope?

Per TechNet, a DHCP scope “is the consecutive range of possible IP addresses that the DHCP server can lease to clients on a subnet. Scopes typically define a single physical subnet on your network to which DHCP services are offered. Scopes are the primary way for the DHCP server to manage distribution and assignment of IP addresses and any related configuration parameters to DHCP clients on the network.”

Let’s say you have three subnets on your local network, 192.168.1.0/24, 192.168.2.0/24, and 192.168.3.0/24. The first subnet, 192.168.1.0/24, is a server and network management subnet where all IPs are statically assigned. For this subnet, you would not need to configure a DHCP scope.

For the other subnets, 192.168.2.0/24 is for your wired clients and 192.168.3.0/24 is for your wireless clients. These clients will connect and disconnect to the network throughout the day and week. For these subnets, you would configure a DHCP scope to handle the automatic assignment of IP address leases to these clients.

[Read more…] about Configuring Windows DHCP, Part 2: Creating DHCP Scopes

Configuring Windows DHCP, Part 1: Installing the DHCP Server Role

Aaron Rothstein · August 14, 2017 · Leave a Comment

Use PowerShell to configure a Windows DHCP server, starting with the installation of the DHCP Server role.

Windows DHCP Server and PowerShell

If you are running an Active Directory network with Active Directory integrated DNS, you are likely also running Windows DHCP server for managing the automatic assignment of IP addresses to network clients. This post is the first in a series of how to install and configure a Windows DHCP Server using PowerShell, which will allow you to author a build script ahead of implementation, as well as handle some transitional activities from a previous Windows DHCP server.

A DHCP Server is a good candidate for using Desired State Configuration, and there is a DSC resource for managing a DHCP server, which we will cover at the tail end of this post series. But first we will demonstrate the usage of the various DHCP server related cmdlets. [Read more…] about Configuring Windows DHCP, Part 1: Installing the DHCP Server Role

  • « Go to Previous Page
  • Page 1
  • Interim pages omitted …
  • Page 3
  • Page 4
  • Page 5
  • Page 6
  • Page 7
  • Interim pages omitted …
  • Page 9
  • Go to Next Page »

Primary Sidebar

Aaron

Think PowerShell

Copyright © 2025 · Monochrome Pro on Genesis Framework · WordPress · Log in