powershell -Command - handling of backspace
PowerShell can be started with input redirected in different scenarios. `powershell -Command -` is one scenario where commands are sent to PowerShell, but this is not a interactive shell scenario, it's really a server to run commands from some other process. `powershell -File -` or just regular redirected input means PowerShell is an interactive shell, but command line editing must be done via the redirected standard input handle instead of interacting directly with a console handle. In this scenario, we want to provide a good editing experience. Today, we provide the bare minimum, supporting backspace but no cursor movement. The bug here is that backspace was treated as a backspace in the server mode but should not have been.
PowerShell
Welcome to the PowerShell GitHub Community! PowerShell is a cross-platform (Windows, Linux, and macOS) automation and configuration tool/framework that works well with your existing tools and is optimized for dealing with structured data (e.g. JSON, CSV, XML, etc.), REST APIs, and object models. It includes a command-line shell, an associated scripting language and a framework for processing cmdlets.
New to PowerShell?
If you are new to PowerShell and would like to learn more, we recommend reviewing the getting started documentation.
Get PowerShell
You can download and install a PowerShell package for any of the following platforms.
| Platform | Downloads | How to Install |
|---|---|---|
| Windows 10 / Server 2016 | .msi | Instructions |
| Windows 8.1 / Server 2012 R2 | .msi | Instructions |
| Ubuntu 16.04 | .deb | Instructions |
| Ubuntu 14.04 | .deb | Instructions |
| CentOS 7 | .rpm | Instructions |
| macOS 10.11 | .pkg | Instructions |
| Docker | Instructions |
To install a specific version, visit releases.
Chat Room
Want to chat with other members of the PowerShell community?
We have a Gitter Room which you can join below.
There is also the community driven PowerShell Slack Team which you can sign up for at Slack Signup.
Building the Repository
| Linux | Windows | macOS |
|---|---|---|
| Instructions | Instructions | Instructions |
If you have any problems building, please consult the developer FAQ.
Build status of master branches
| AppVeyor (Windows) | Travis CI (Linux / macOS) |
|---|---|
Downloading the Source Code
The PowerShell repository has a number of other repositories embedded as submodules.
To make things easy, you can just clone recursively:
git clone --recursive https://github.com/PowerShell/PowerShell.git
If you already cloned but forgot to use --recursive, you can update submodules manually:
git submodule update --init
See working with the PowerShell repository for more information.
Developing and Contributing
Please see the Contribution Guide for how to develop and contribute.
If you have any problems, please consult the known issues, developer FAQ, and GitHub issues. If you do not see your problem captured, please file a new issue and follow the provided template. If you are developing .NET Core C# applications targeting PowerShell Core, please check out our FAQ to learn more about the PowerShell SDK NuGet package.
Legal and Licensing
PowerShell is licensed under the MIT license.
Governance
Governance policy for PowerShell project is described here.
Code of Conduct
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.