2011-11-09 1 views
0

너트 쉘에서 PowerShell로 YUI 압축기를 구동하여 Visual Studio 사전의 일부로 일부 JS 압축을 수행합니다 - 빌드 이벤트. 구문 오류가 매우 드물기는하지만 이러한 오류가 발생하면 지금 알고있는 스크립트를 사용하여 Visual Studio에서 로그를 빌드하거나 오류를 표시 할 수 없었습니다. PowerShell 스크립트에서 YUI가 나중에 볼 수 있도록 .txt 파일에 오류를 기록하게하십시오.PowerShell로 YUI 압축기를 구동하고 구문 오류를 Visual Studio 사전 빌드 스크립트 인 .txt 파일에 작성하십시오.

ATTRIB -R $ 인수 "$ 인수를에서 작업"

쓰기 호스트 (후자가 선호하는 것) *. */s의

가져-ChildItem을 $ 인수 -include *. js -recurse -force | - 유형 js - 노 그지)

(%) - {java -jar C : ₩ Tools ₩ yuicompressor-2.4.6 ₩ build ₩ yuicompressor-2.4.6.jar ($ .fullname) -o ($. .... \

하여 powershell.exe - 파일 "$ (PROJECTDIR를) 다음 PowerShell 스크립트에서

쓰기 호스트 나 다음 Visual 스튜디오에서 다음 cmd를 사용하여 출력을 .txt를 만들 수 있습니다 PowerScripts \ Pre_Build_Public.ps1 ">>"C : \ Tools \ Pre_Build_Report.txt ""$ (ProjectDir) 스크립트 "

YUI에서 나온 오류가있는 ork도 있습니까?

더 자세한 설명이 필요하면 알려 주시기 바랍니다. 나는 이것을 가능한 한 쉽게 만들고 싶고, 이것을 보면서 시간을내어 주셔서 감사드립니다.

답변

0

당신은 2>&1 연산자를 사용하여 표준 오류 스트림을 리디렉션 할 수 있습니다 :

powershell.exe -file "$(ProjectDir)....\PowerScripts\Pre_Build_Public.ps1" 2>&1 >> "C:\Tools\Pre_Build_Report.txt" "$(ProjectDir)Scripts" 

내가 PowerShell에서의 내부 오류 처리가 stderr에 기록하지 않습니다, 그러나, 생각합니다. 당신은 그것을 손으로해야 할 것입니다. 이 표준 출력에 각 오류를 보낼 것

foreach($err in $error) 
{ 
     Write-Output $err 
} 

: 당신의 Pre_Build_Public.ps1 스크립트의 끝에서, 내가 좋아하는 일을 할 것입니다.

PowerShell v3에서 PowerShell의 내부 오류 스트림 리디렉션을 지원하는 것처럼 보입니다.

관련 문제