mirror of
https://github.com/janikvonrotz/awesome-powershell.git
synced 2024-10-01 03:15:42 -04:00
14 KiB
14 KiB
Awesome PowerShell
A curated list of delightful PowerShell packages and resources.
PowerShell is a cross-platform (Windows, Linux, and macOS) automation and configuration tool that is optimized for dealing with structured data (e.g. JSON, CSV, XML, etc.), REST APIs, and object models. It includes a command-line shell and an associated scripting language.
Contents
- API Wrapper
- Blogs
- Build Tools
- Code and Package Repositories
- Commandline Productivity
- Communities
- Documentation Helper
- Frameworks
- Editors and IDEs
- Package Managers
- Parallel Processing
- Podcasts
- Security
- Testing
- Themes
- Videos
- Webserver
- SharePoint
- SQL Server
- Misc
API Wrapper
- HipChatAdmin - A module for simple integration with Atlassian HipChat via the HipChat API.
- PSGitHub - This PowerShell module contains commands to manage GitHub through its REST API.
- Posh-Github - Powershell cmdlets that expose the GitHub API.
- Posh-Gist - PowerShell cmdlets for interacting with GitHub Gist.
- PSGist - A PowerShell module to work with GitHub Gists. http://dotps1.github.io/PSGist.
- PSAppVeyor - A PowerShell Module to interact with the AppVeyor REST Api.
- PSSlack - PowerShell module for simple Slack integration http://ramblingcookiemonster.github.io/PSSlack/
Blogs
- Windows PowerShell Blog - Official PowerShell Team Blog.
- Hey, Scripting Guy! Blog - Popular Microsoft blog.
- Learn Powershell | Achieve More - Personal blog of Boe Prox who moderated for the Scripting Guy.
- PowerShellMagazine - Awesome magazine.
- Doug Finke - Author of PowerShell for Developers.
- Mike F. Robbins - Microsoft MVP. SAPIEN Tech MVP. Co-author of Windows PowerShell TFM 4th Edition.
Books
- PowerShell in Depth - The go-to reference for administrators working with Windows PowerShell. Every major shell technique, technology, and tactic is explained and demonstrated, providing a comprehensive reference to almost everything an admin would do in the shell.
- Windows PowerShell in Action, Third Edition - The latest revision of this comprehensive reference guide.
- Learn Windows PowerShell in a Month of Lunches, Third Edition - An innovative tutorial designed for busy IT professionals. Just set aside one hour a day - lunchtime would be perfect - for a month, and you'll be automating Windows tasks faster than you ever thought possible.
- Learn PowerShell Scripting in a Month of Lunches - A guide to the process of developing, testing, and deploying scripts, and the art of PowerShell toolmaking.
Build Tools
- psake - Build automation tool inspired by rake (aka make in Ruby) and bake (aka make in Boo).
- Invoke-Build - Build and test automation tool inspired by psake.
- PSDeploy - Module built for the purpose of simplifying multiple types of deployments.
- BuildHelpers - Variety of helper functions for CI/CD scenarios.
- YDeliver - Build and deployment framework aimed at .NET projects.
Code and Package Repositories
- GitHub - Looking for an Open Source PowerShell project? It's probably here.
- PowerShell Code Repository - Wide variety of PowerShell code from snippets to modules.
- PowerShell Gallery - Offical PowerShell package repository, used by PowerShellGet.
- TechNet Gallery - Wide variety of PowerShell code from snippets to modules.
Commandline Productivity
- posh-git - Set of PowerShell scripts which provide Git/PowerShell integration.
- PSReadLine - Bash inspired readline implementation for PowerShell. Keeps history between sessions, adds reverse-history search and makes the commandline experience much better overall.
- TabExpansionPlusPlus - PowerShell module to make customizing tab completion easier and add a library of custom argument completers.
- Jump-Location - Powershell
cd
that reads your mind. Autojump implementation for powershell. - Zlocation - z.sh implementation for PowerShell. Similar to Jump-Location.
- thefuck - Magnificent app which corrects your previous console command (by typing
fuck
). - pslinq - LINQ (LINQ2Objects) for Powershell.
- posh-with - Command prefixing for continuous workflow using a single tool.
- poco - peco implementation. Interactive filtering tool.
Communities
- PowerShell.com - Forums, blog posts, and more.
- PowerShell.org - Forums, summits, community blog posts, and more.
- /r/PowerShell - Reddit PowerShell community.
- Slack PowerShell team - Large chat room dedicated to PowerShell. Bridged with
#PowerShell
on irc.freenode.net. - Twitter #PowerShell - Vibrant PowerShell community; great way to keep up with news and blog content.
Documentation Helper
- platyPS - Write PowerShell External Help in Markdown.
- Invoke-CreateModuleHelpFile - PowerShell function to create a HTML help file for a module and all it's commands.
Editors and IDEs
- PowerShell Studio - Powerful PowerShell IDE with module, help, and user interface development tools, high DPI support and regular updates.
- PowerShell for Visual Studio Code - Provides IntelliSense, code navigations, script analysis, script debugging, and more for the Visual Studio Code editor.
- PoshTools for Visual Studio - Provides IntelliSense, script debugging, and Pester testing support for PowerShell to Visual Studio.
- PowerShell ISE - Official PowerShell development environment included with Microsoft Windows.
- ISE Steroids - Add-on for the PowerShell ISE which provides a rich set of additional features to complete the ISE development experience.
- PowerShell Plus - All in one IDE.
- SublimeText package - PowerShell language support for Sublime Text.
- Atom package - PowerShell language support for Atom.
Frameworks
- Carbon - DevOps for automating the configuration of Windows computers.
- PowerShell PowerUp - Powerfull server management framework.
- PSCX - Useful set of additional cmdlets.
- PlatyPS - Write PowerShell External Help in Markdown.
Package Managers
- PowershellGet - PowerShellGet is the Package Manager for PowerShell https://www.PowerShellGallery.com
- PsGet - Set of commands to install modules from central directory, local file or from the web.
- Chocolatey - The package manager for Windows. The sane way to manage software on Windows.
- GitLab - Use a GitLab server as Package Provider.
Parallel Processing
- PoshRSJob - Provides an alternative to PSjobs with greater performance and less overhead to run commands in the background.
- Invoke-Parallel - This function will take in a script or scriptblock, and run it against specified objects(s) in parallel.
Podcasts
- PowerScripting - Weekly show run by Jon Walz and Hal Rottenberg.
Security
- File System Security - Allows a much easier management of permissions on files and folders.
- PowerShellArsenal - Module used to aid a reverse engineer.
- PowerTools - Collection of projects with a focus on offensive operations.
- PowerForensics - Popular live disk forensics platform for windows.
- PowerSploit - Post-exploitation framework.
- PowerShellEmpire - Post-exploitation agent.
- PSReflect - Easily define in-memory enums, structs, and Win32 functions in PowerShell. Useful for attacks, example.
Testing
- Pester - Powershell BDD style testing framework.
Themes
- Oh-My-Posh - Tons of beautiful theme that can be enabled by one single command (includes many awesome powerline theme).
- Powerline - PowerShell Classes for richer output and prompts.
Videos
- PowerShell Unplugged with Jeffrey Snover and Don Jones Ignite 2017 The inventor of PowerShell talking about "the latest and coolest PowerShell features to help you automate and manage the hybrid cloud". Focused on the PowerShell Community
- Getting Started With PowerShell 3.0 Jump Start - Jump starts series are for IT professionals with no previous experience with PowerShell, and want to learn it fast.
- Advanced Tools & Scripting with PowerShell 3.0 - IT pros, take this advanced PowerShell course to find out how to turn your real time management and automation scripts into useful reusable tools and cmdlets.
- What's New in PowerShell v5 - Through description on some of the exciting new features in PowerShell version 5.0.
- PowerShell Open Source Project - Collection of videos thoroughly demonstrate how PowerShell open source project runs on Linux.
- PowerShell on Linux and Open Source - Brief introduction to PowerShell open source project and how it runs on linux.
- PowerShell - This show will include videos talking about the PowerShell automation platform, Desired State Configuration (DSC), infrastructure as code, and related concepts!! These videos are created by Trevor Sullivan, a Microsoft MVP for Windows PowerShell.
Webserver
- Flancy - Web microframework for Windows PowerShell.
- NancyPS - Nancy, self-hosted in PowerShell, with script method handlers.
- PoSH Server - Secure, flexible and lightweight web server to meet your requirements.
- WebCommander - Run scripts and view results, in a friendly web GUI or via a web service.
SharePoint
- AutoSPInstaller - Automated SharePoint 2010/2013 installation script.
- Client-side SharePoint - API for SharePoint 2010, 2013 and Online.
SQL Server
- dbareports - Gather, store and display your SQL Server estate data.
- dbatools - Instance migrations and best practice implementations.
Misc
- poke - Crazy cool reflection module for powershell. Explore and invoke private APIs like nobody is watching. Useful for security research, testing and quick hacks.
- psInlineProgress - Write inline progress bars in PowerShell.