Windows PowerShell에서는 Windows 명령줄 프로그램을 실행하고 Windows Powershell 프롬프트에서 메모장 및 계산기와 같은 그래픽 사용자 인터페이스가 있는 Windows 프로그램을 시작할 수 있습니다. Windows 프로그램에서 생성하는 텍스트를 캡처하여 Windows PowerShell에서 사용할 수도 있습니다.
예를 들어 다음 명령은 Windows, IPConfig, Net 및 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
Select-String과 같은 Windows PowerShell cmdlet을 사용하여 Windows 프로그램에서 반환하는 텍스트를 조작할 수도 있습니다.
예를 들어 다음 명령은 파이프라인 연산자를 사용하여 IPConfig 명령의 결과를 Windows PowerShell Select-String cmdlet으로 보냅니다. 이 cmdlet은 문자열에서 텍스트를 검색합니다. 이 예에서는 Select-String을 사용하여 IpConfig 출력에서 "255" 패턴을 찾습니다.
C:\PS> ipconfig | select-string -pattern 255 Subnet Mask . . . . . . . . . . . : 255.255.252.0
Windows 명령 또는 도구에 매개 변수가 있는 경우(예: Shutdown의 "-r"(다시 시작) 매개 변수) Windows PowerShell은 매개 변수를 해석하지 않고 도구에 전달합니다.
그러나 도구에서 Windows PowerShell 예약어를 사용하거나 Nant의 "-D:debug=false" 매개 변수(Windows PowerShell에서는 이를 "-D"와 "debug=false"의 두 매개 변수로 해석함)와 같이 Windows PowerShell에 생소한 명령 형식을 사용하는 경우에는 매개 변수를 따옴표로 묶어 Windows PowerShell이 매개 변수를 해석하지 않고 도구에 전달하도록 해야 합니다.