반응형
msbuild로 exec 작업 출력을 얻는 방법
exec 작업으로 간단한 출력을 얻으려고합니다 msbuild.
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Target Name="Test">
<Exec Command="echo test output">
<Output TaskParameter="Outputs" ItemName="Test1" />
</Exec>
<Exec Command="echo test output">
<Output TaskParameter="Outputs" PropertyName="Test2" />
</Exec>
<Message Text="----------------------------------------"/>
<Message Text="@(Test1)"/>
<Message Text="----------------------------------------"/>
<Message Text="$(Test2)"/>
<Message Text="----------------------------------------"/>
</Target>
</Project>
그러나 다음 출력을 얻으십시오.
echo test output
test output
echo test output
test output
----------------------------------------
----------------------------------------
----------------------------------------
스크립트에서 출력을 얻으려면 어떻게해야합니까?
모두 좋은 소식입니다! 이제 <Exec>.NET 4.5 부터 출력을 캡처 할 수 있습니다 .
이렇게 :
<Exec ... ConsoleToMSBuild="true">
<Output TaskParameter="ConsoleOutput" PropertyName="OutputOfExec" />
</Exec>
간단히:
- 추가
ConsoleToMsBuild="true"귀하에<Exec>태그 - 태그 의
ConsoleOutput매개 변수를 사용하여 출력 캡처<Output>
드디어!
나는 MSBuild의 한계와 작동해야하지만 작동하지 않는 것 (적어도 모든 상황에서)에 대해 너무 좌절감을 느끼는 지점에 이르렀습니다. , C #에서 사용자 지정 빌드 작업을 만듭니다.
다른 제안 중 어느 것도 효과가 없다면 확실히 그렇게 할 수 있습니다.
출력 줄이 세미콜론으로 구분되는 일반 문자열이 아닌 배열과 같은 구조로 출력을 캡처하려면 PropertyName 대신 ItemName 을 사용하십시오 .
<Exec ... ConsoleToMSBuild="true">
<Output TaskParameter="ConsoleOutput" ItemName="OutputOfExec" />
</Exec>
말하자면 출력을 파일로 파이프하고 다시 읽을 수 있습니다.
echo test output > somefile.txt
참고 URL : https://stackoverflow.com/questions/8938679/how-get-exec-task-output-with-msbuild
반응형
'developer tip' 카테고리의 다른 글
| sed의 출력을 변수에 저장 (0) | 2020.10.19 |
|---|---|
| InputStream 길이가있는 AmazonS3 putObject 예제 (0) | 2020.10.19 |
| sql_mode의 특정 값을 어떻게 볼 수 있습니까? (0) | 2020.10.19 |
| 녹아웃보기에서 $ parent의 $ parent 액세스-중첩 컨텍스트 (0) | 2020.10.19 |
| Scala의 명시 적 유형 변환 (0) | 2020.10.19 |