I think PowerShell doesn’t really compete with Bash, it competes with Python, Perl or the like. And I haven’t found it to be superior in that aspect other than at integration with Windows system stuff.
PowerShell should raise the bar for lowest common denominator of scripting on Windows systems. I've dabbled a bit it, but I was disappointed it was so tightly coupled (possibly by necessity?) with the .NET runtime version. This makes it much more difficult to update on old systems. I had to write PowerShell in the oldest compatible version. It's almost like dealing with JavaScript implementations of all versions if IE. Other scripting langues like Python provides user-space virtual environments with forward/backward compatibility. Does PowerShell have a universally available package manager (ie. Windows Update)? I don't spend much time in the Windows world. But, the friction of using PowerShell was higher than my tolerance.