awesome-powershell/readme.md

202 lines
17 KiB
Markdown
Raw Normal View History

2016-09-15 22:12:39 -04:00
# Awesome PowerShell [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)
2015-05-28 08:13:20 -04:00
[<img src="https://github.com/PowerShell/PowerShell/raw/master/assets/Powershell_256.png" align="right" width="80">](https://msdn.microsoft.com/en-us/powershell/)
A curated list of delightful [PowerShell](https://en.wikipedia.org/wiki/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.
2015-05-28 08:13:20 -04:00
## Contents
2016-09-16 05:02:35 -04:00
2016-12-16 07:11:33 -05:00
* [API Wrapper](#api-wrapper)
* [Blogs](#blogs)
2017-10-10 12:48:51 -04:00
* [Books](#books)
* [Build Tools](#build-tools)
* [Code and Package Repositories](#code-and-package-repositories)
2016-09-19 01:23:33 -04:00
* [Commandline Productivity](#commandline-productivity)
* [Communities](#communities)
2016-12-16 07:20:27 -05:00
* [Documentation Helper](#documentation-helper)
* [Frameworks](#frameworks)
* [Editors and IDEs](#editors-and-ides)
* [Module Development Templates](#module-development-templates)
* [Package Managers](#package-managers)
* [Parallel Processing](#parallel-processing)
* [Podcasts](#podcasts)
* [Security](#security)
* [Testing](#testing)
* [Themes](#themes)
* [Videos](#videos)
* [Webserver](#webserver)
* [SharePoint](#sharepoint)
* [SQL Server](#sql-server)
* [Misc](#misc)
2015-06-08 05:59:11 -04:00
2016-12-16 07:11:33 -05:00
## API Wrapper
2017-07-16 18:04:09 -04:00
- [HipChatAdmin](https://github.com/cofonseca/HipChatAdmin) - A module for simple integration with Atlassian HipChat via the HipChat API.
2016-12-16 07:11:33 -05:00
- [PSGitHub](https://github.com/pcgeek86/PSGitHub) - This PowerShell module contains commands to manage GitHub through its REST API.
- [Posh-Github](https://github.com/Iristyle/Posh-GitHub) - Powershell cmdlets that expose the GitHub API.
- [Posh-Gist](https://github.com/dfinke/Posh-Gist) - PowerShell cmdlets for interacting with GitHub Gist.
2017-10-16 03:49:04 -04:00
- [PSGist](https://github.com/dotps1/PSGist) - A PowerShell module to work with GitHub Gists.
2016-12-16 07:11:33 -05:00
- [PSAppVeyor](https://github.com/dotps1/PSAppVeyor) - A PowerShell Module to interact with the AppVeyor REST Api.
2017-10-16 03:49:04 -04:00
- [PSSlack](https://github.com/RamblingCookieMonster/PSSlack) - PowerShell module for simple Slack integration.
- [ConfluencePS](https://atlassianps.org/module/ConfluencePS/) - A module for interacting with Atlassian's Confluence in powershell (by using the API).
- [JiraPS](https://atlassianps.org/module/JiraPS/) - A module for interacting with Atlassian's Jira in powershell (by using the API).
2016-12-16 07:11:33 -05:00
2016-09-18 21:00:31 -04:00
## Blogs
- [Windows PowerShell Blog](https://blogs.msdn.microsoft.com/powershell/) - Official PowerShell Team Blog.
- [Hey, Scripting Guy! Blog](http://blogs.technet.com/b/heyscriptingguy/) - Popular Microsoft blog.
- [Learn Powershell | Achieve More](http://learn-powershell.net/) - Personal blog of Boe Prox who moderated for the Scripting Guy.
- [PowerShellMagazine](http://www.powershellmagazine.com/) - Awesome magazine.
- [Doug Finke](https://dfinke.github.io/#blog) - Author of [PowerShell for Developers](http://shop.oreilly.com/product/0636920024491.do).
- [Mike F. Robbins](http://mikefrobbins.com/) - Microsoft MVP. SAPIEN Tech MVP. Co-author of Windows PowerShell TFM 4th Edition.
2017-10-10 12:44:42 -04:00
## Books
2017-10-10 12:47:30 -04:00
- [Exploring PowerShell Automation](https://www.manning.com/books/exploring-powershell-automation) - a free eBook sampler that gives you an overview of how to administer your environment.
- [PowerShell in Depth](https://www.manning.com/books/powershell-in-depth) - The go-to reference for administrators. 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](https://www.manning.com/books/windows-powershell-in-action-third-edition) - The latest revision of the comprehensive reference guide.
2017-10-10 12:44:42 -04:00
- [Learn Windows PowerShell in a Month of Lunches, Third Edition](https://www.manning.com/books/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.
2017-10-10 12:47:30 -04:00
- [Learn PowerShell Scripting in a Month of Lunches](https://www.manning.com/books/learn-powershell-scripting-in-a-month-of-lunches) - A guide to the process of developing, testing, and deploying scripts, and the art of toolmaking.
2017-10-10 12:44:42 -04:00
2016-09-18 21:00:31 -04:00
## Build Tools
* [psake](https://github.com/psake/psake) - Build automation tool inspired by rake (aka make in Ruby) and bake (aka make in Boo).
* [Invoke-Build](https://github.com/nightroman/Invoke-Build) - Build and test automation tool inspired by psake.
* [PSDeploy](https://github.com/RamblingCookieMonster/PSDeploy) - Module built for the purpose of simplifying multiple types of deployments.
* [BuildHelpers](https://github.com/RamblingCookieMonster/BuildHelpers) - Variety of helper functions for CI/CD scenarios.
2016-10-31 15:43:37 -04:00
* [YDeliver](https://github.com/manojlds/YDeliver) - Build and deployment framework aimed at .NET projects.
2016-09-18 21:00:31 -04:00
## Code and Package Repositories
- [GitHub](https://github.com/search?l=powershell&q=stars%3A%3E1&s=stars&type=Repositories) - Looking for an Open Source PowerShell project? It's probably here.
- [PowerShell Gallery](https://www.powershellgallery.com/) - Offical PowerShell package repository, used by PowerShellGet.
- [TechNet Gallery](https://gallery.technet.microsoft.com/) - Wide variety of PowerShell code from snippets to modules.
2016-09-18 21:00:31 -04:00
## Commandline Productivity
- [posh-git](https://github.com/dahlbyk/posh-git) - Set of PowerShell scripts which provide Git/PowerShell integration.
- [PSReadLine](https://github.com/lzybkr/PSReadLine) - Bash inspired readline implementation for PowerShell. Keeps history between sessions, adds reverse-history search and makes the commandline experience much better overall.
- [TabExpansionPlusPlus](https://github.com/lzybkr/TabExpansionPlusPlus) - PowerShell module to make customizing tab completion easier and add a library of custom argument completers.
- [Jump-Location](https://github.com/tkellogg/Jump-Location) - Powershell `cd` that reads your mind. [Autojump](https://github.com/wting/autojump) implementation for powershell.
- [Zlocation](https://github.com/vors/ZLocation) - [z.sh](https://github.com/rupa/z) implementation for PowerShell. Similar to Jump-Location.
- [thefuck](https://github.com/nvbn/thefuck) - Magnificent app which corrects your previous console command (by typing `fuck`).
- [pslinq](https://github.com/manojlds/pslinq) - LINQ (LINQ2Objects) for Powershell.
- [posh-with](https://github.com/JanJoris/posh-with) - Command prefixing for continuous workflow using a single tool.
- [poco](https://gist.github.com/yumura/8df37c22ae1b7942dec7) - [peco](https://github.com/peco/peco) implementation. Interactive filtering tool.
2018-01-03 21:44:39 -05:00
- [PSDirTag](https://github.com/wtjones/PSDirTag) - DirTags are relative paths that appear as variables in the Powershell prompt that update as you navigate. Saves keystrokes when navigating folder structures.
- [PSUtil](https://github.com/PowershellFrameworkCollective/PSUtil) - Designed to make the user's console life more convenient. It includes shortcuts, aliases, keybindings and convenience functions geared towards greater efficiency and less typing.
2016-09-18 21:00:31 -04:00
## Communities
2018-10-30 16:42:54 -04:00
- [PowerShell.com](http://powershell.com/) - Forums, blog posts, and more.
- [PowerShell.org](http://powershell.org/) - Forums, summits, community blog posts, and more.
- [/r/PowerShell](http://www.reddit.com/r/powershell) - Reddit PowerShell community.
- [Slack PowerShell team](http://slack.poshcode.org/) - Large chat room dedicated to PowerShell. Bridged with `#PowerShell` on irc.freenode.net.
- [Twitter #PowerShell](https://twitter.com/search?q=%23PowerShell&src=hash) - Vibrant PowerShell community; great way to keep up with news and blog content.
2015-06-05 02:09:09 -04:00
2016-12-16 07:20:27 -05:00
## Documentation Helper
- [platyPS](https://github.com/PowerShell/platyPS) - Write PowerShell External Help in Markdown.
- [Invoke-CreateModuleHelpFile](https://github.com/gravejester/Invoke-CreateModuleHelpFile) - PowerShell function to create a HTML help file for a module and all it's commands.
2017-10-16 03:49:04 -04:00
- [PScribo](https://github.com/iainbrighton/PScribo) - PowerShell documentation framework what can create HTML, Word, text files based on PowerShell-based DSL (domain specific language).
2016-12-16 07:20:27 -05:00
2016-09-18 21:00:31 -04:00
## Editors and IDEs
2015-05-29 01:54:07 -04:00
- [PowerShell Studio](https://www.sapien.com/software/powershell_studio) - Powerful PowerShell IDE with module, help, and user interface development tools, high DPI support and regular updates.
- [PowerShell for Visual Studio Code](https://marketplace.visualstudio.com/items?itemName=ms-vscode.PowerShell) - Provides IntelliSense, code navigations, script analysis, script debugging, and more for the [Visual Studio Code](https://code.visualstudio.com) editor.
- [PoshTools for Visual Studio](https://github.com/adamdriscoll/PoshTools) - Provides IntelliSense, script debugging, and Pester testing support for PowerShell to Visual Studio.
- [PowerShell ISE](https://msdn.microsoft.com/en-us/powershell/scripting/core-powershell/ise/using-the-windows-powershell-ise) - Official PowerShell development environment included with Microsoft Windows.
- [ISE Steroids](http://www.powertheshell.com/isesteroids/) - Add-on for the PowerShell ISE which provides a rich set of additional features to complete the ISE development experience.
- [PowerShell Plus](https://www.idera.com/productssolutions/freetools/powershellplus) - All in one IDE.
- [SublimeText package](https://github.com/SublimeText/PowerShell) - PowerShell language support for Sublime Text.
- [Atom package](https://github.com/jugglingnutcase/language-powershell) - PowerShell language support for Atom.
2015-05-29 01:54:07 -04:00
## Module Development Templates
- [Plaster](https://github.com/PowerShell/Plaster) - Plaster is a template-based file and project generator written in PowerShell.
- [PSModuleDevelopment](https://github.com/PowershellFrameworkCollective/PSModuleDevelopment) - Get started using module templates in 2 minutes with this module's low entry barrier and casual convenience.
2016-09-18 21:00:31 -04:00
## Frameworks
- [Carbon](http://get-carbon.org/) - DevOps for automating the configuration of Windows computers.
2016-11-11 23:30:59 -05:00
- [PowerShell PowerUp](https://github.com/janikvonrotz/PowerShell-PowerUp) - Powerfull server management framework.
2018-01-24 09:36:58 -05:00
- [PSCX](https://github.com/Pscx/Pscx) - PowerShell Community Extensions - Useful set of additional cmdlets.
- [PSFramework](https://github.com/PowershellFrameworkCollective/psframework) - Easily add configurations, logging and more to your own PowerShell module.
2016-09-18 21:00:31 -04:00
## Package Managers
2015-05-29 01:54:07 -04:00
2017-10-16 03:49:04 -04:00
- [PowershellGet](https://github.com/powershell/powershellget) - PowerShellGet is the Package Manager for PowerShell. Packages are available on [PowerShellGallery](https://www.PowerShellGallery.com).
2015-05-29 01:54:07 -04:00
- [PsGet](http://psget.net/) - Set of commands to install modules from central directory, local file or from the web.
- [Chocolatey](https://chocolatey.org/) - The package manager for Windows. The sane way to manage software on Windows.
2017-10-01 20:27:40 -04:00
- [GitLab](https://github.com/akamac/GitLabProvider) - Use a GitLab server as Package Provider.
2015-05-29 01:54:07 -04:00
## Parallel Processing
- [PoshRSJob](https://github.com/proxb/PoshRSJob) - Provides an alternative to PSjobs with greater performance and less overhead to run commands in the background.
- [Invoke-Parallel](https://github.com/RamblingCookieMonster/Invoke-Parallel) - This function will take in a script or scriptblock, and run it against specified objects(s) in parallel.
## Podcasts
- [PowerScripting](https://powershell.org/podcast/) - Weekly show run by Jon Walz and Hal Rottenberg.
- [The PowerShell News Podcast](https://powershellnews.podbean.com/) - This podcast is the latest news on PowerShell.
2016-09-18 21:00:31 -04:00
## Security
2015-05-28 08:13:20 -04:00
- [File System Security](https://gallery.technet.microsoft.com/scriptcenter/1abd77a5-9c0b-4a2b-acef-90dbb2b84e85) - Allows a much easier management of permissions on files and folders.
- [PowerShellArsenal](https://github.com/mattifestation/PowerShellArsenal) - Module used to aid a reverse engineer.
2015-06-05 02:09:09 -04:00
- [PowerTools](https://github.com/Veil-Framework/PowerTools) - Collection of projects with a focus on offensive operations.
2016-10-04 04:07:48 -04:00
- [PowerForensics](https://github.com/Invoke-IR/PowerForensics) - Popular live disk forensics platform for windows.
- [PowerSploit](https://github.com/PowerShellMafia/PowerSploit) - Post-exploitation framework.
- [PowerShellEmpire](https://github.com/PowerShellEmpire/Empire) - Post-exploitation agent.
2017-10-16 03:49:04 -04:00
- [PSReflect](https://github.com/mattifestation/PSReflect) - Easily define in-memory enums, structs, and Win32 functions in PowerShell. Useful for attacks, [example](https://github.com/FuzzySecurity/PowerShell-Suite/tree/master/Bypass-UAC).
- [BloodHound](https://github.com/BloodHoundAD/BloodHound) - Easily identify highly complex attack paths that would otherwise be impossible to quickly identify.
2016-09-18 21:00:31 -04:00
## Testing
- [Pester](https://github.com/pester/Pester) - Powershell BDD style testing framework.
2017-10-16 03:49:04 -04:00
- [Format-Pester](https://github.com/equelin/format-pester) - Powershell module for documenting Pester's results - exports Pester results to HTML, Word, text files using [PScribo](https://github.com/iainbrighton/PScribo) .
2016-09-18 21:00:31 -04:00
## Themes
- [Oh-My-Posh](https://github.com/JanJoris/oh-my-posh) - Tons of beautiful theme that can be enabled by one single command (includes many awesome powerline theme).
- [Powerline](https://github.com/Jaykul/PowerLine) - PowerShell Classes for richer output and prompts.
2016-09-16 23:15:46 -04:00
2016-09-18 21:00:31 -04:00
## Videos
2016-09-16 23:15:46 -04:00
2017-10-01 20:27:40 -04:00
- [PowerShell Unplugged with Jeffrey Snover and Don Jones Ignite 2017](https://www.youtube.com/watch?v=D15vh-ryJGk) 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
2016-09-16 23:15:46 -04:00
- [Getting Started With PowerShell 3.0 Jump Start](https://mva.microsoft.com/en-US/training-courses/getting-started-with-powershell-30-jump-start-8276) - 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](https://channel9.msdn.com/Series/advpowershell3) - 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](https://mva.microsoft.com/en-US/training-courses/whats-new-in-powershell-v5-16434) - Through description on some of the exciting new features in PowerShell version 5.0.
- [PowerShell Open Source Project](https://channel9.msdn.com/series/PowerShell-Open-Source-Project) - Collection of videos thoroughly demonstrate how PowerShell open source project runs on Linux.
- [PowerShell on Linux and Open Source](https://channel9.msdn.com/Blogs/hybrid-it-management/PowerShell-on-Linux-and-Open-Source) - Brief introduction to PowerShell open source project and how it runs on linux.
2016-09-16 23:15:46 -04:00
- [PowerShell](https://channel9.msdn.com/Shows/MsftPowerShell) - 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.
2016-09-17 04:32:30 -04:00
2016-09-18 21:00:31 -04:00
## Webserver
2016-09-17 04:39:57 -04:00
- [Flancy](https://github.com/toenuff/flancy) - Web microframework for Windows PowerShell.
- [NancyPS](https://github.com/Jaykul/NancyPS) - Nancy, self-hosted in PowerShell, with script method handlers.
- [PoSH Server](http://www.poshserver.net/) - Secure, flexible and lightweight web server to meet your requirements.
2018-05-19 04:50:57 -04:00
- [Polaris](https://github.com/PowerShell/Polaris) - A cross-platform, minimalist web framework for PowerShell
2016-10-31 15:45:08 -04:00
- [WebCommander](https://github.com/vmware/webcommander) - Run scripts and view results, in a friendly web GUI or via a web service.
## SharePoint
- [AutoSPInstaller](https://autospinstaller.codeplex.com/) - Automated SharePoint 2010/2013 installation script.
- [Client-side SharePoint](https://sharepointpowershell.codeplex.com/) - API for SharePoint 2010, 2013 and Online.
- [SPReplicator](https://github.com/potatoqualitee/SPReplicator) - SPReplicator helps replicate SharePoint list data to/from CSV, SQL Server, SharePoint itself and more.
## SQL Server
- [dbachecks](https://dbachecks.io) - SQL Server Environmental Validation (crowdsourced SQL Server DBA Checklists)
- [dbatools](https://dbatools.io) - Helps SQL Server Pros be more productive with instance migrations and much more.
## Misc
2017-10-15 22:17:47 -04:00
- [DbgShell](https://github.com/Microsoft/DbgShell) - A PowerShell front-end for the Windows debugger engine.
- [poke](https://github.com/oising/poke) - Crazy cool reflection module for powershell.
Explore and invoke private APIs like nobody is watching.
Useful for security research, testing and quick hacks.
2016-12-16 07:18:25 -05:00
- [psInlineProgress](https://github.com/gravejester/psInlineProgress) - Write inline progress bars in PowerShell.