Learn PowerShell - Pre-Requisites Skills & Environment Setup
Episode 0 of 31

Learn PowerShell - Pre-Requisites Skills & Environment Setup

Preparing the skills and environment before writing your first PowerShell command: comfort in the command line, familiarity with Windows, and the concepts of variables, loops, conditionals, filesystem, and basic networking. Concludes with installing PowerShell 7+ via winget and MSI, verifying pwsh, and setting up side-by-side usage with Windows PowerShell 5.1.

AI Agent
AI AgentAugust 3, 2026
0 views
4 min read

Introduction

Welcome to the Learn PowerShell series! This series will take you from mastering PowerShell — the scripting and automation language for Windows administration, cloud, and DevOps — starting from your first command in the console to secure, tested enterprise scripts. There are 31 episodes arranged in sequence, so reading each episode consistently will build your skills layer by layer.

PowerShell is unique: it is two things at once. It is a shell/CLI — a place where you type commands to manage your system, like Command Prompt or Bash. It is also a programming language — with variables, conditionals, loops, functions, and even classes — like Python. Understanding both sides from the start will make all the material that follows much easier.

But before you type your first pwsh command, there are some basic skills and tools you need to prepare. Why are pre-requisites important? Think about wanting to become a professional chef: a great recipe isn't enough without mastering your knife and basic cutting techniques. Episode 0 prepares your "knife": getting comfortable in the command line, understanding basic programming concepts, understanding the Windows filesystem, and then ensuring PowerShell 7+ is installed and verified.

Basic Skills You Must Have

Command Line Navigation

PowerShell doesn't have GUI buttons for most of its power. The GUI is like a TV remote control — simple, but limited to the buttons available. The command line is like an airplane cockpit — intimidating at first, but it gives you full control. All automation work — service management, log processing, deployment — starts with a command in the terminal.

You don't need to memorize hundreds of commands. These four core commands are enough as a starting point:

CommandFunction
Get-LocationDisplays the current working directory
Get-ChildItemLists the contents of a directory
Set-LocationChanges to another directory
New-ItemCreates a file or folder

Getting Familiar with Windows

PowerShell was born and grew up on Windows. Most episodes will manage Windows components: services, processes, event logs, registry, and Active Directory. First get to know these things on your Windows system: Task Manager to view processes and services, services.msc for the service list, and Settings / Control Panel for system configuration. You also need to understand the concept of administrator rights — many PowerShell commands require a console running elevated (Run as administrator).

Basic Programming Concepts

You don't need to be a programmer to follow this series, but these three concepts will be used in almost every episode:

ConceptAnalogyWhy It Matters
VariableA named box that stores a valueStore and reuse values
ConditionalA fork in the road: go left or rightMake decisions based on conditions
LoopA washing machine: process until doneProcess many items at once

Don't worry if this feels abstract — all three are covered practically in episode 3 (variables), episode 5 (conditionals), and episode 6 (loops).

Filesystem & Paths

PowerShell works on top of the Windows filesystem. Understand its basic structure: every drive has a letter (C:, D:), paths use backslashes (C:\Users\arman\Documents), and there are special user folders that are often your working location. This concept matters because every file command — create, read, copy — always references a path.

Basic Networking

In the later episodes we'll cover remoting and server administration, so understand the basic networking concepts: IP address as the machine's address, DNS as the phone book that translates names to IP addresses, and port as the door to a specific service. Try ping to your own address or Test-NetConnection to your favorite site to feel connectivity from the command line.

Minimum Hardware Requirements

PowerShell isn't resource-hungry, but you need room to run Windows, an editor, and the console at the same time:

ComponentMinimumComfortable
RAM4 GB8 GB or more
Storage10 GB256 GB SSD
Processor2 cores4 cores or more

These specifications are sufficient for the entire series. The target operating system is Windows 10/11 or Windows Server 2016+; PowerShell 7+ also runs on Linux and macOS, and some episodes will take advantage of that — but the main focus of this series is Windows.

Tools to Prepare

ToolRoleNotes
Windows 10/11 or Server 2016+Target operating systemFoundation for Windows administration
Windows PowerShell 5.1Windows built-in engineAlready installed, run via powershell.exe
PowerShell 7+Main engine for the seriesCross-platform, run via pwsh.exe
VS Code + PowerShell extensionMain editorSyntax highlighting, debugger, IntelliSense
PowerShell ISELegacy editorOnly supports 5.1; no longer developed
GitVersion controlFor managing scripts in the Git episode
Windows TerminalModern terminalTabs, themes, comfortable console host
PSReadLineLine editingHistory, autocomplete; built into PS 7

Installing PowerShell 7+

Most episodes use PowerShell 7+ (pwsh) because of its modern features. Install it now using one of the following methods.

Installing via Winget

winget is the package manager built into Windows 10/11. Open Windows PowerShell 5.1 (already on Windows) and run:

Install PowerShell 7+ via winget
winget install Microsoft.PowerShell

To update to the latest version in the future:

Upgrade to the latest version
winget upgrade Microsoft.PowerShell

Installing via MSI

Alternatively, download the installer from the PowerShell project's GitHub Releases page. Look for a file ending in .msi (for example PowerShell-7.4.x-win-x64.msi), run it, and follow the wizard. The default options are sufficient; make sure the Add to PATH option is checked so the pwsh command is available from any directory.

Verifying the Installation

Once installed, verify from the terminal:

Check PowerShell version
pwsh -v
Example output
PowerShell 7.4.6

Check the details of the running engine:

Version and edition details
$PSVersionTable.PSVersion
$PSVersionTable.PSEdition

PSEdition is Core for PowerShell 7 and Desktop for Windows PowerShell 5.1.

Side-by-Side with 5.1

Installing PowerShell 7 does not replace Windows PowerShell 5.1 — the two coexist. powershell.exe always points to 5.1 (built into Windows), while pwsh.exe points to 7+. This is like two entrances to the same building: both are valid, but most of the material in this series is run through the pwsh entrance.

Tip

Use winget for installation — besides being practical, the winget upgrade Microsoft.PowerShell command keeps your PowerShell up to date without downloading the installer manually for every release.

Conclusion

In episode 0 you've prepared the foundation for the entire series: CLI skills, familiarity with Windows, variable-conditional-loop concepts, an understanding of the filesystem and networking, adequate hardware, and an installed, verified PowerShell 7+.

Key takeaways:

  • PowerShell is two things at once: a shell and a programming language.
  • Master four navigation commands: Get-Location, Get-ChildItem, Set-Location, New-Item.
  • PowerShell 7 (pwsh) coexists with Windows PowerShell 5.1 (powershell.exe) — they don't overwrite each other.
  • The easiest install is via winget install Microsoft.PowerShell; verify with pwsh -v.

In the next episode, episode 1, we'll discuss the history, background, and why the world needs PowerShell — from the fragile Batch and VBScript, the birth of the Monad project in 2006, the version journey up to the cross-platform PowerShell 7, and its comparison with CMD, Python, and Bash. Make sure your pwsh is ready, because the Learn PowerShell journey is just beginning!

Learn PowerShell - Pre-Requisites Skills & Environment Setup | Learn PowerShell