PowerShell offers access to shell in Windows. You can create PowerShell scripts to manage all aspects of Windows operating system through its shell. The best part about PowerShell is that it is cross-platform and can be installed on Windows operating system, mac operating system and even Linux. PowerShell is one of the most extensive automation tools that can be used to automate a lot of things around your Windows servers and networks. You could also consider PowerShell as a distant cousin of Linux or Unix servers’ bash scripts. But, PowerShell goes beyond bash scripts.
Benefits of PowerShell
PowerShell can help automated a lot of mundane and repetitive tasks for the administrators. With the help of PowerShell scripts, an administrator can access:
- Active Directory services on the corporate network.
- Windows Management Instrumentation or WMI
- Registry on the servers and computers
- Backup Servers on the network
- Azure cloud platform for managing cloud deployments, cloud monitoring and cloud management.
- SQL server management and monitoring.
- Microsoft Exchange Server management, monitoring and automation.
Depending on the specific goal, you could create or download a PowerShell script to execute on your network and computers. That should provide you with the desired automation results. One such example could be fetching error logs from Windows servers automatically and parsing the logs in an easily viewable file format. You could import the error logs and export the errors in an html format for ease of viewing and managing the logs on a daily basis.
Is PowerShell supported on other platforms?
Yes, PowerShell is a cross-platform scripting platform that can be extended through user-provided functions. PowerShell is fully compatible with the Microsoft eco-system that covers Windows Servers, Exchange Servers, SQL Servers and Azure cloud platform.
Aside from the Microsoft eco-system, PowerShell can be used to run scripts and automate aspects of the infrastructure based on:
- Amazon Web Services or AWS
- Google Cloud Platform or GCP
- VMWare platform
What commands are supported by PowerShell?
Since PowerShell is a cross-platform shell, it can run commands from different operating system environments.
- PowerShell can run native Windows commands. Any command that gets executed on the command prompt can also be executed on the Microsoft PowerShell.
- PowerShell can also run all the Unix commands.
- PowerShell, also, can run all the Linux commands.
- Apart from the Windows, Unix and Linux commands, PowerShell comes with its own native commands. These commands are also called as CMDLets. CMDLets are PowerShell commands that can be executed from within the PowerShell shell environment.
- PowerShell also supports command Aliases. These aliases are nothing but pointers to the actual commands.
What scripting language is used in PowerShell?
PowerShell rides on the underlying .NET framework. All scripts and output from the PowerShell commands are .NET objects. PowerShell also supports a lot of universal formats like CSV, JSON and XML. You could import data from these formats. Or, you could use PowerShell to export desired results in JSON, CSV or XML file formats.
What is the latest version of PowerShell?
On 20th October 2022, Microsoft released the stable release version 7.2.7 for PowerShell. The latest version of PowerShell can be downloaded from the GitHub page.
PowerShell 7.2 is supported on:
- Windows
- Linux
- macOS
- ARM64 versions of Windows and macOS
- ARM32 and ARM64 versions of Debian and Ubuntu
The details of PowerShell 7.2 compatibility with each operating system are shared below for your ready reference.
PowerShell 7.2 on Windows
The following chip architectures are supported by PowerShell 7.2 for Windows environment:
Windows | 7.2 (LTS-current) |
---|---|
Nano Server Version 1803+ | x64 |
Windows Server 2012 R2+ | x64, x86 |
Windows Server Core 2012 R2+ | x64, x86 |
Windows 10 or 11 Client | x64, x86, Arm64 |
Windows 8.1 Client | x64, x86 |
PowerShell 7.2 on macOS
The following processor architectures on macOS are supported by Microsoft PowerShell 7.2:
macOS | 7.2 (LTS-current) |
---|---|
macOS Big Sur 11.5 | x64, Arm64 |
macOS High Sierra 10.13+ | x64 |
PowerShell 7.2 is also compatible with
- macOS Catalina 10.15
- macOS Mojave 10.14
PowerShell 7.2 on Alpine Linux
For Alpine Linux, PowerShell 7.2 is supported on Alpine Linux versions 3.12, 3.13 and 3.14. PowerShell 7.2 is compatible with the following processor architecture on Alpine Linux:
Alpine Linux Version | PowerShell 7.2 architecture |
3.12 | x64 |
3.13 | x64 |
3.14 | x64 |
PowerShell 7.2 on Red Hat Enterprise Linux or RHEL
RHEL versions 7 and 8 are compatible with PowerShell 7.2. We list the compatible chip architectures for PowerShell 7.2 on RHEL below.
RHEL Version | PowerShell 7.2 compatible architecture |
7 | x64, Arm64 |
8 | x64, Arm64 |
PowerShell 7.2 on Debian Linux
Debian Linux versions 10 and 11 are compatible with PowerShell 7.2 version. The following processor architectures are supported by PowerShell 7.2 for Debian Linux:
Debian Linux Version | PowerShell 7.2 compatible architecture |
10 | x64, Arm32, Arm64 |
11 | x64, Arm32, Arm64 |
PowerShell 7.2 on Ubuntu Linux
PowerShell 7.2 is compatible with Ubuntu versions 18.04, 20.04 and 22.04. PowerShell 7.2 is incompatible with Ubuntu 16.4 version. The list of compatible processors architectures for Ubuntu Linux are mentioned below:
Ubuntu Version | PowerShell 7.2 compatible processors |
18.04 | x64, Arm32, Arm64 |
20.04 | x64, Arm32, Arm64 |
22.04 | x64, Arm32, Arm64 |
Summary
- PowerShell 7.2 is the latest LTS release of PowerShell
- PowerShell 7.3 is in the preview mode
- PowerShell 7.2 is supported by Windows, macOS, Alpine Linux, RHEL, Debian Linux and Ubuntu Linux.
- A list of processors that are compatible with PowerShell 7.2 has been shared for your ready reference.
You may like to read these practical guides for Windows using Powershell commands:
- Battery report of Windows computer using Powershell
- Use Powershell to find all files over a certain size
- Check TPM on Windows computer using Powershell
- How to find TPM version of a computer using Powershell?
- How to concatenate strings in Powershell?
- How to find Windows Update history using Powershell?
- How to find disk block size in Powershell?
Rajesh Dhawan is a technology professional who loves to blog about smart wearables, Cloud computing and Microsoft technologies. He loves to break complex problems into manageable chunks of meaningful information.