Sem entrar em julgamentos de valor sobre o paradigma, as principais vantagens do PowerShell são a integração e incumbência de .Net - a partir do servidor Windows 2008 em diante, ele é empacotado por padrão e carregado em service packs no 2003 e 2003 R2.
Para ser justo, existem várias outras opções para scripts - por exemplo, Perl e Python. O Python também oferece a opção de usar o IronPython, se você quiser integração nativa com .Net. De fato, o IronPython se instalará satisfatoriamente apenas soltando-o em um diretório. Você pode agrupá-lo trivialmente em um aplicativo sem a necessidade de uma etapa de instalação separada.
A força principal do Powershell é um pouco de uma faca de dois gumes. Embora o fluxo de objetos .net seja bastante útil e tenha suas vantagens, ele coloca muito mais suposições sobre a capacidade dos componentes de jogar bem com a estrutura. Para que isso realmente funcione, você precisa agrupar as coisas com os cmdlets. Embora a saída de texto seja um nível um pouco mais baixo e exija análise, ela coloca menos ônus nos componentes para jogar bem com a estrutura.
Com o tempo, eu esperaria ver muito mais do ecossistema do Windows (componentes de MS e de terceiros) fornecidos com wrappers de cmdlet para que eles trabalhem com o Powershell. Quando isso acontece, o caso do PowerShell se tornará muito mais forte.
Historicamente, uma das principais fraquezas tradicionais do Windows, do ponto de vista administrativo, é o baixo suporte a scripts. A MS reconheceu isso há alguns anos e, após algumas tentativas esfarrapadas (por exemplo, WSH), o Powershell é o esforço mais credível da MS até agora para corrigir essa deficiência.
ConcernedOfTunbridgeWells
fonte