En Windows PowerShell se pueden ejecutar programas de línea de comandos de Windows, y en el símbolo del sistema de Windows PowerShell se pueden abrir programas de Windows que tienen una interfaz gráfica de usuario, como Bloc de notas y Calculadora. Asimismo, es posible capturar el texto que los programas de Windows generan y utilizarlo en Windows PowerShell.
Por ejemplo, los comandos siguientes utilizan comandos de Windows y los comandos IPConfig, Net y Shutdown.
C:\PS> net localgroup administrators /add domain01\user01 The command completed successfully. C:\PS> ipconfig Windows IP Configuration Ethernet adapter Local Area Connection: Connection-specific DNS Suffix . : domain.corp.fabricam.com IP Address. . . . . . . . . . . . : 142.20.152.115 Subnet Mask . . . . . . . . . . . : 255.255.252.0 Default Gateway . . . . . . . . . : 172.30.180.1 C:\PS> shutdown -r
Incluso se pueden utilizar cmdlets de Windows PowerShell, como Select-String, para manipular el texto que los programas de Windows devuelven.
Por ejemplo, el comando siguiente utiliza un operador de canalización para enviar los resultados de un comando IPConfig al cmdlet Select-String de Windows PowerShell, que busca texto en cadenas. En este caso, se utiliza Select-String para buscar el patrón "255" en los resultados de IpConfig.
C:\PS> ipconfig | select-string -pattern 255 Subnet Mask . . . . . . . . . . . : 255.255.252.0
Cuando una herramienta o un comando de Windows tiene parámetros, como el parámetro "-r" (reinicia) de Shutdown, Windows PowerShell pasa los citados parámetros a la herramienta sin interpretarlos.
Sin embargo, si la herramienta utiliza una palabra reservada de Windows PowerShell o un formato de comando que no es familiar para Windows PowerShell, como el parámetro "-D:debug=false" de Nant (Windows PowerShell interpreta esto como dos parámetros, "-D" y "debug=false"), se han de incluir los parámetros entre comillas para indicar a Windows PowerShell que debe enviarlos a la herramienta sin su interpretación.