2013-10-03 6 views
0

출력을 로그 파일 및 콘솔에 기록하는 스크립트가 있습니다. Add-WindowsFeatures 명령을 실행 중입니다 ...이 명령의 출력을 가져 와서 스크립트에 파이프로 보내고 싶습니다. 가능한가?은 출력을 다른 스크립트로 파이프하는 방법이 있습니까?

+0

로그 파일의 출력 또는 스크립트의 출력을 원하십니까? – zdan

+0

나는이 스크립트에 명령 추가 - windowsfeature 파이핑의 출력을 원한다.이 스크립트는 로그 파일 – Naz

답변

4

물론입니다. param 문에 CmdletBinding 특성을 포함하면됩니다. 그런 다음 매개 변수 중 하나에 특성을 추가하여 파이프 라인 입력이 매개 변수에 바인딩되는 방식을 자세히 설명하십시오. 예를 들어 C에 넣고 : \ 임시 \ GET-extension.ps1 :

[CmdletBinding()] 
Param(
[parameter(Mandatory=$true, 
      ValueFromPipeline=$true)][System.IO.FileInfo[]]$file 
) 

process { 
    $file.Extension 
} 

을 그런 다음이 작업을 수행 할 수 있습니다

dir -File| C:\temp\get-extension.ps1 

업데이트를 최신 코멘트를 해결하기 위해 : 내가 설정 같은데요 매개 변수 [object[]]$stuff보다는 [fileinfo[]]에 대한 유형과 처리 블록에

$stuff | out-file c:\logs\logfile.txt #or wherever you want 

퍼팅은 가까이됩니다.

+0

에 쓴다.하지만 내가 할 때 추가 - windowsfeatures | c : \ .... ps1, 난 그냥 내 로그 파일에 microsoft.Windows.ServerManager.Commands.FeatureOperationResult를 참조하십시오. 이 명령의 출력이 표시되지 않습니다. – Naz

+0

작동 여부 : $ stuff.ToString() | out-file c : \ logs \ logfile.txt –