When comparing DASH vs MS PowerShell, the Slant community recommends DASH for most people. In the question“What is the best programming language to learn first?” DASH is ranked 52nd while MS PowerShell is ranked 64th. The most important reason people chose DASH is:
Dash has a very fast startup, this happens because the shell is started a lot of times during boot and dash minimizes the work it does during this process.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Fast startup
Dash has a very fast startup, this happens because the shell is started a lot of times during boot and dash minimizes the work it does during this process.
Pro Low memory usage, which matters a lot in embedded
It is designed to be very lightweight and has no support for shell specific extensions that are not POSIX.
Pro Default shell on Debian systems
DASH is the default shell for Debian based systems due to it speed, full POSIX compliance and low overhead.
Pro Full POSIX support
It's fully POSIX compatible, so if your script runs on dash it will probably run on all other shells.
Pro A perfect clone
It's a clone of the original System V4 Bourne shell.
Pro Helpful Help
The help system is designed to evolve over time; running update-help
downloads the latest content.
When searching for help on items, you can simply type help commandname
to get information about a command.
If you're not sure what you're looking for, but have a rough idea, you can search on partial command names, or even specify specific verbs to get a list of commands potentially of interest; e.g. help -verb write
.
The information in help gives a good overview of the commands you're looking at, along with code examples, so you can see real-world usage without resorting to the web.
Pro Splatting
When calling a method with multiple parameters, rather than passing one variable per parameter you're able to "splat" one variable to the method, with the parameters taking their values from its properties.
Pro Pipeline
Commands can be chained via the pipeline, allowing output from one to be cleanly fed as input to the next.
Pro Chocolatey Package
PowerShell is installable through Chocolatey.
Pro Extensible
The language can wrap and interact with code written in other language's, making it highly extensible.
Pro Multi-Platform (ish)
Though Windows Powershell only works on Windows, the open source implementation Pash (http://pash.sourceforge.net/) allows the same language to be run on other OSes.
Cons
Con Doesn't support all bash features
Dash does not support all bash features, sometimes called 'bashisms' unless explicitly pointed at /bin/sh
.
Con Very verbose
The commands themselves, as well as the output and error messages, are VERY verbose