다음을 통해 공유


Exec 작업

업데이트: 2007년 11월

지정된 인수를 적용하여 지정된 프로그램이나 명령을 실행합니다.

매개 변수

다음 표에서는 Exec 작업의 매개 변수에 대해 설명합니다.

매개 변수

설명

Command

필수적 String 매개 변수입니다.

실행할 명령입니다. 이 명령은 attrib와 같은 시스템 명령일 수도 있고 program.exe, runprogram.bat 또는 setup.msi와 같은 실행 파일일 수도 있습니다.

이 매개 변수는 여러 줄의 명령을 포함할 수 있습니다. 여러 개의 명령을 배치 파일에 저장한 다음 이 매개 변수를 사용하여 실행할 수도 있습니다.

ExitCode

선택적 Int32 읽기 전용 출력 매개 변수입니다.

실행한 명령에서 제공하는 종료 코드를 지정합니다.

IgnoreExitCode

선택적 Boolean 매개 변수입니다.

true이면 실행한 명령에서 제공하는 종료 코드를 작업에서 무시합니다. 그렇지 않으면 실행한 명령에서 0이 아닌 종료 코드를 반환하는 경우 작업에서 false를 반환합니다.

Outputs

선택적 ITaskItem[] 출력 매개 변수입니다.

작업의 출력 항목이 들어 있습니다. Exec 작업에서는 이러한 항목이 자동으로 설정되지 않습니다. 대신 사용자가 직접 이를 제공하여 프로젝트에서 나중에 사용할 수 있습니다.

StdErrEncoding

선택적 String 출력 매개 변수입니다.

캡처한 작업 표준 오류 스트림의 인코딩을 지정합니다. 기본값은 현재 콘솔 출력 인코딩입니다.

StdOutEncoding

선택적 String 출력 매개 변수입니다.

캡처한 작업 표준 출력 스트림의 인코딩을 지정합니다. 기본값은 현재 콘솔 출력 인코딩입니다.

Timeout

선택적 Int32 매개 변수입니다.

작업 실행 파일이 얼마 후에 종료될 지를 밀리초 단위로 지정합니다. 기본값은 제한 시간이 없음을 나타내는 Int.MaxValue입니다.

ToolPath

선택적 String 매개 변수입니다.

작업에서 내부 실행 파일(cmd.exe)을 로드할 위치를 지정합니다.

WorkingDirectory

선택적 String 매개 변수입니다.

명령을 실행할 디렉터리를 지정합니다.

설명

이 작업은 수행하려는 작업에 대한 특정 MSBuild 작업을 사용할 수 없는 경우에 유용합니다. 더 구체적인 작업 대신 Exec 작업을 사용할 때의 단점으로는 실행한 도구나 명령의 출력을 수집할 수 없다는 점을 들 수 있습니다.

Exec 작업은 프로세스를 직접 호출하는 대신 cmd.exe를 호출합니다.

예제

다음 예제에서는 Exec 작업을 사용하여 명령을 실행합니다.

<Project xmlns="https://schemas.microsoft.com/developer/msbuild/2003">
    <ItemGroup>
        <Binaries Include="*.dll;*.exe"/>
    </ItemGroup>

    <Target Name="SetACL">
        <!-- set security on binaries-->
        <Exec Command="echo y| cacls %(Binaries.Identity) /G everyone:R"/>
    </Target>

</Project>

참고 항목

개념

MSBuild 작업

기타 리소스

MSBuild 작업 참조