> Historically, PowerShell was supposed to be a replacement for cmd.exe and roughly equivalent to bash
What? PowerShell has radically different ideology. Plus it is super consistent (helps discover commands), extensible and works with objects rather plain strings, use .NET functions or call custom .dll functions...
> They tried early on to port some of the UNIX & Linux tools to Windows and it didn't fly
Actually they just use aliases to map well-known unix commands to powershell counterparts. It is not expected to have command switches work like that etc. Just a convenience for folks used to rm, ls, tee, wget, whatever. Maybe bad decision because of confusion, maybe a good one because helps people get started with PowerShell.
For me as a Windows admin, PowerShell is one of the best things within Windows Ecosystem.
There is an episode of the "To Be Continuous" podcast with Jeff Snover (PS's inventor) that gets into this a bit more. Because of the difference in philosophy, a straight port to Windows didn't work well.
Basically, text files (UNIX) v structured data from API's (Windows), thus PowerShell was born.
What? PowerShell has radically different ideology. Plus it is super consistent (helps discover commands), extensible and works with objects rather plain strings, use .NET functions or call custom .dll functions...
> They tried early on to port some of the UNIX & Linux tools to Windows and it didn't fly
Actually they just use aliases to map well-known unix commands to powershell counterparts. It is not expected to have command switches work like that etc. Just a convenience for folks used to rm, ls, tee, wget, whatever. Maybe bad decision because of confusion, maybe a good one because helps people get started with PowerShell.
For me as a Windows admin, PowerShell is one of the best things within Windows Ecosystem.