When powershell comes up, someone always gripes about how they can't do this or that like they can in bash. I'm not going to deny that grep is nicer to use that the powershell equivalent (Select-String). But you don't configure Windows and other software in the Microsoft ecosystem by messing around with text. For example, if you had a new user and you wanted to set up an account, email address, and phone number (so AD, Exchange, and Lync/Skype for Business in Microsoft land), it wouldn't just be hard using something like Cygwin, it would probably be impossible. There is just no way to talk to those programs text streams or config files.
I guess what I always want to know when people complain about powershell is what they were actually trying to do. I think it's an excellent tool for system administration in a Microsoft environment. When you start moving away from that use case, it gets less and less useful.