# powershell/powershell

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/powershell-powershell).**

53,943 stars · 8,355 forks · C# · MIT

## Links

- GitHub: https://github.com/PowerShell/PowerShell
- Homepage: https://microsoft.com/PowerShell
- awesome-repositories: https://awesome-repositories.com/repository/powershell-powershell.md

## Topics

`command-line` `hacktoberfest` `linux` `macos` `netcore` `powershell` `shell` `windows`

## Description

PowerShell is a cross-platform task automation and configuration management framework. It functions as an object-oriented shell environment and a dynamic scripting language, enabling users to interact with system interfaces and manage infrastructure through a unified command-line interface. By executing as a managed application on the common language runtime, it provides direct access to native libraries and system APIs.

The system is distinguished by its object-based pipeline, which processes structured data objects rather than raw text, allowing for precise property manipulation across command chains. It utilizes a modular command architecture based on a standard verb-noun naming convention, alongside a provider-based abstraction layer that maps disparate data stores into a consistent, drive-like structure for uniform navigation.

Beyond interactive command execution, the project includes a declarative configuration engine designed to define and enforce desired system states across local and remote environments. This capability supports the creation of portable scripts and the automation of complex administrative workflows, ensuring consistent environment setups across large-scale deployments.

## Tags

### Data & Databases

- [Object-Based Pipelines](https://awesome-repositories.com/f/data-databases/data-processing-pipelines/data-processing/object-based-pipelines.md) — Passes structured objects between commands to enable precise property access and manipulation throughout execution chains.
- [Data Access & Abstraction](https://awesome-repositories.com/f/data-databases/data-access-querying/data-access-abstraction.md) — Maps disparate data stores like file systems and registries into a consistent, drive-like structure for uniform navigation.

### Operating Systems & Systems Programming

- [Object-Oriented Shells](https://awesome-repositories.com/f/operating-systems-systems-programming/terminal-command-line-environments/shells-scripting/object-oriented-shells.md) — Utilizes pipelines to process structured data objects, simplifying complex system administration and automation tasks.

### Programming Languages & Runtimes

- [System Scripting Languages](https://awesome-repositories.com/f/programming-languages-runtimes/programming-language-varieties/domain-specific-languages/system-scripting-languages.md) — Delivers a dynamic scripting language optimized for interacting with operating system services, file systems, and hardware resources.
- [Runtime Management Systems](https://awesome-repositories.com/f/programming-languages-runtimes/runtime-execution-environments/runtime-environments/runtimes/runtime-management-systems.md) — Runs as a managed application on common language runtimes, granting direct access to native libraries and system-level APIs.
- [Dynamic Scripting Runtimes](https://awesome-repositories.com/f/programming-languages-runtimes/programming-language-varieties/scripting-languages/dynamic-scripting-runtimes.md) — Interprets scripts dynamically within an interactive environment, supporting both procedural logic and real-time command processing.

### Development Tools & Productivity

- [Cmdlet Architectures](https://awesome-repositories.com/f/development-tools-productivity/terminal-shell-cli/cli-tooling-frameworks/command-architectures/cmdlet-architectures.md) — Standardizes modular command execution through a consistent verb-noun naming convention for performing specific system operations.
- [Task](https://awesome-repositories.com/f/development-tools-productivity/build-tooling/build-orchestration-logic/build-orchestration-configuration/build-automation-systems/automation/task.md) — Automates system interactions and application tasks using a dynamic scripting language with robust control flow. ([source](https://learn.microsoft.com/powershell/scripting/overview))
- [Interactive Command Line Interfaces](https://awesome-repositories.com/f/development-tools-productivity/command-line-interfaces/advanced-execution-environments/interactive-command-line-interfaces.md) — Facilitates complex system task execution through an interactive terminal interface that natively processes structured objects.
- [Administrative](https://awesome-repositories.com/f/development-tools-productivity/build-tooling/build-orchestration-logic/build-orchestration-configuration/build-automation-systems/automation/administrative.md) — Eliminates repetitive manual work by chaining commands to process and transform data across local and remote environments. ([source](https://learn.microsoft.com/powershell/scripting/overview))

### DevOps & Infrastructure

- [Configuration Engines](https://awesome-repositories.com/f/devops-infrastructure/infrastructure/configuration-policy-enforcement/configuration-engines.md) — Maintains consistent environment configurations across large-scale deployments by declaring and enforcing desired system states.
- [Configuration Management](https://awesome-repositories.com/f/devops-infrastructure/configuration-management.md) — Simplifies infrastructure maintenance by using declarative code to ensure consistent system states across multiple machines. ([source](https://learn.microsoft.com/powershell/scripting/overview))
- [Declarative Configuration Engines](https://awesome-repositories.com/f/devops-infrastructure/configuration-management/declarative-configuration-frameworks/declarative-configuration-engines.md) — Reconciles system environments against structured resource definitions to automatically reach and maintain desired configurations.

### Software Engineering & Architecture

- [Cross-Platform Scripting](https://awesome-repositories.com/f/software-engineering-architecture/cross-platform-development/cross-platform-scripting.md) — Supports the creation of portable automation scripts that execute consistently across diverse operating systems.

### System Administration & Monitoring

- [Administration Tools](https://awesome-repositories.com/f/system-administration-monitoring/administrative-operations/configuration-control-utilities/system-administration-tools/administration-tools.md) — Unifies infrastructure management and remote system monitoring through a command-line environment with integrated workflows.
- [System Administration Operations](https://awesome-repositories.com/f/system-administration-monitoring/administrative-operations/configuration-control-utilities/system-administration-tools/administration-tools/system-administration-operations.md) — Streamlines infrastructure troubleshooting and management by chaining commands into structured data pipelines.

### Part of an Awesome List

- [Command Line Shells](https://awesome-repositories.com/f/awesome-lists/devtools/command-line-shells.md) — Cross-platform task automation and configuration framework.
- [Programming Languages](https://awesome-repositories.com/f/awesome-lists/devtools/programming-languages.md) — Cross-platform task automation and configuration management shell.
- [Shell Environments](https://awesome-repositories.com/f/awesome-lists/devtools/shell-environments.md) — Cross-platform automation and configuration framework for structured data.
- [Terminal Shells](https://awesome-repositories.com/f/awesome-lists/devtools/terminal-shells.md) — Cross-platform shell for automation and configuration management.
