다음을 통해 공유


dotnet 명령

이 문서의 적용 대상: ✔️ .NET Core 3.1 SDK 이상 버전

이름

dotnet - .NET CLI에 대한 제네릭 드라이버입니다.

개요

사용 가능한 명령 및 환경에 대한 정보를 얻으려면 다음을 수행합니다.

dotnet [--version] [--info] [--list-runtimes] [--list-sdks]

dotnet -h|--help

명령을 실행하려면(SDK 설치 필요):

dotnet <COMMAND> [-d|--diagnostics] [-h|--help] [--verbosity <LEVEL>]
    [command-options] [arguments]

애플리케이션을 실행하려면 다음을 수행합니다.

dotnet [--additionalprobingpath <PATH>] [--additional-deps <PATH>]
    [--fx-version <VERSION>]  [--roll-forward <SETTING>]
    <PATH_TO_APPLICATION> [arguments]

dotnet exec [--additionalprobingpath <PATH>] [--additional-deps <PATH>]
    [--depsfile <PATH>]
    [--fx-version <VERSION>]  [--roll-forward <SETTING>]
    [--runtimeconfig <PATH>]
    <PATH_TO_APPLICATION> [arguments]

설명

명령에는 dotnet 두 가지 함수가 있습니다.

  • .NET 프로젝트 작업을 위한 명령을 제공합니다.

    예를 들어 dotnet build는 프로젝트를 빌드합니다. 각 명령은 자체 옵션과 인수를 정의합니다. 모든 명령은 명령을 사용하는 방법에 대한 간단한 설명서를 인쇄하는 옵션을 지원 --help 합니다.

  • .NET 애플리케이션을 실행합니다.

    애플리케이션을 실행할 애플리케이션 .dll 파일의 경로를 지정합니다. 애플리케이션을 실행하는 것은 진입점을 찾아서 실행하는 것을 의미하며, 콘솔 앱의 경우 메서드입니다 Main . 예를 들어 dotnet myapp.dll 애플리케이션을 실행합니다 myapp . 배포 옵션에 대한 자세한 내용은 .NET 애플리케이션 배포 를 참조하세요.

옵션

다음과 같은 다양한 옵션을 사용할 수 있습니다.

  • 환경에 대한 정보를 표시합니다.
  • 명령을 실행합니다.
  • 애플리케이션을 실행합니다.

환경 정보 및 사용 가능한 명령을 표시하는 옵션

실행할 명령이나 애플리케이션을 지정하지 않고 단독으로 사용하는 경우 dotnet 다음 옵션을 사용할 수 있습니다. 예를 들어 dotnet --info 또는 dotnet --version. 환경에 대한 정보를 출력합니다.

  • --info

    .NET 설치 및 컴퓨터 환경(예: 현재 운영 체제 및 .NET 버전의 커밋 SHA)에 대한 자세한 정보를 출력합니다.

  • --version

global.jsondotnet 영향을 받을 수 있는 명령에서 사용하는 .NET SDK의 버전을 출력합니다. SDK가 설치된 경우에만 사용할 수 있습니다.

  • --list-runtimes [--arch <ARCH>]

    호출 dotnet된 아키텍처에 대해 설치된 .NET 런타임 목록을 출력합니다. x86 버전의 dotnet 목록은 x86 런타임이고 x64 버전은 dotnet x64 런타임만 나열합니다.

    .NET 10 이상 버전에서는 인수를 지원합니다 --arch . 아키텍처와 동일 dotnet 하지 않고 지정한 경우 지정된 아키텍처의 .NET 설치를 검색하고 거기에 설치된 모든 런타임을 출력합니다. 허용되는 값에는 arm64, x64 및 x86이 포함됩니다. dotnet/런타임 리포지토리에는 유효한 아키텍처 값의 전체 목록이 있습니다.

  • --list-sdks [--arch <ARCH>]

    호출 dotnet된 아키텍처에 대해 설치된 .NET SDK 목록을 출력합니다. x86 버전의 dotnet 목록은 x86 SDK만, x64 버전의 dotnet 목록은 x64 SDK만 나열합니다.

    .NET 10 이상 버전에서는 인수를 지원합니다 --arch . 지정되고 아키텍처와 동일 dotnet 하지 않은 경우 지정된 아키텍처의 .NET 설치를 검색하고 거기에 설치된 모든 SDK를 출력합니다. 허용되는 값에는 arm64, x64 및 x86이 포함됩니다. dotnet/런타임 리포지토리에는 유효한 아키텍처 값의 전체 목록이 있습니다.

  • -?|-h|--help

    사용 가능한 명령 목록을 출력합니다.

명령을 실행하기 위한 옵션

다음 옵션은 명령에 대한 dotnet 것입니다. 예를 들어 dotnet build --help 또는 dotnet build --verbosity diagnostic.

  • -d|--diagnostics

    진단 출력을 사용하도록 설정합니다.

  • -v|--verbosity <LEVEL>

    명령의 세부 정보 표시 수준을 설정합니다. 허용되는 값은 q[uiet], m[inimal], n[ormal], d[etailed]diag[nostic]. 모든 명령에서 지원되지 않습니다. 이 옵션을 사용할 수 있는지 확인하려면 특정 명령 페이지를 참조하세요.

  • -?|-h|--help

    지정된 명령에 대한 설명서를 출력합니다. 예를 들어 dotnet build --help 명령에 대한 도움말을 표시합니다 build .

  • command options

    각 명령은 해당 명령과 관련된 옵션을 정의합니다. 사용 가능한 옵션 목록은 특정 명령 페이지를 참조하세요.

애플리케이션 실행 옵션

애플리케이션을 실행할 때 dotnet 사용할 수 있는 옵션은 다음과 같습니다. 예: dotnet --roll-forward Major myapp.dll.

  • --additionalprobingpath <PATH>

    검색 정책 및 검색할 어셈블리를 포함하는 경로입니다. 옵션을 반복하여 여러 경로를 지정합니다.

  • --additional-deps <PATH>

    추가 .deps.json 파일의 경로입니다. deps.json 파일에는 어셈블리 충돌을 해결하는 데 사용되는 종속성, 컴파일 종속성 및 버전 정보 목록이 포함되어 있습니다. 자세한 내용은 GitHub의 런타임 구성 파일을 참조하세요.

  • --roll-forward <SETTING>

    앱에 롤포워드를 적용하는 방법을 제어합니다. 다음 SETTING 값 중 하나일 수 있습니다. 지정하지 않으면 Minor이 기본값입니다.

    • LatestPatch - 가장 높은 패치 버전으로 롤 포워드합니다. 이렇게 하면 부 버전 롤 포워드가 비활성화됩니다.
    • Minor - 요청된 부 버전이 누락된 경우 가장 낮은 상위 부 버전으로 롤 포워드합니다. 요청된 부 버전이 있는 경우 LatestPatch 정책이 사용됩니다.
    • Major - 요청된 주 버전이 누락된 경우 가장 낮은 상위 주 버전 및 가장 낮은 부 버전으로 롤 포워드합니다. 요청된 주 버전이 있는 경우 부 정책이 사용됩니다.
    • LatestMinor - 요청된 부 버전이 있는 경우에도 가장 높은 부 버전으로 롤워드합니다. 구성 요소 호스팅 시나리오용입니다.
    • LatestMajor - 요청된 주 버전이 있는 경우에도 가장 높은 주 버전 및 가장 높은 부 버전으로 롤아웃합니다. 구성 요소 호스팅 시나리오용입니다.
    • Disable - 롤 포워드하지 마세요. 지정된 버전에만 바인딩합니다. 이 정책은 최신 패치로 롤 포워드하는 기능을 사용하지 않도록 설정하므로 일반적인 용도로는 권장되지 않습니다. 이 값은 테스트에만 권장됩니다.

    예외를 제외하고 Disable모든 설정은 사용 가능한 가장 높은 패치 버전을 사용합니다.

    롤 포워드 동작은 프로젝트 파일 속성, 런타임 구성 파일 속성 및 환경 변수에서도 구성할 수 있습니다. 자세한 내용은 주 버전 런타임 롤 포워드를 참조하세요.

  • --fx-version <VERSION>

    애플리케이션을 실행하는 데 사용할 .NET 런타임의 버전입니다.

    이 옵션은 애플리케이션 파일의 첫 번째 프레임워크 참조 버전을 재정의 .runtimeconfig.json 합니다. 즉, 프레임워크 참조가 하나뿐인 경우에만 예상대로 작동합니다. 애플리케이션에 둘 이상의 프레임워크 참조가 있는 경우 이 옵션을 사용하면 오류가 발생할 수 있습니다.

명령을 사용하여 애플리케이션 exec 을 실행하는 옵션

다음 옵션은 명령을 사용하여 dotnet 애플리케이션을 실행하는 경우에만 exec 사용할 수 있습니다. 예: dotnet exec --runtimeconfig myapp.runtimeconfig.json myapp.dll.

  • --depsfile <PATH>

    deps.json 파일의 경로입니다. deps.json 파일은 애플리케이션을 실행하는 데 필요한 종속성에 대한 정보를 포함하는 구성 파일입니다. 이 파일은 .NET SDK에 의해 생성됩니다.

  • --runtimeconfig <PATH>

    runtimeconfig.json 파일의 경로입니다. runtimeconfig.json 파일에는 런타임 설정이 포함되며 일반적으로 applicationname<.runtimeconfig.json이름이 지정>됩니다. 자세한 내용은 .NET 런타임 구성 설정참조하세요.

dotnet 명령

일반

명령어 기능
dotnet 빌드 .NET 애플리케이션을 빌드합니다.
dotnet build-server 빌드에서 시작한 서버와 상호 작용합니다.
dotnet clean 빌드 출력을 정리합니다.
dotnet exec .NET 애플리케이션을 실행합니다.
dotnet 도움말 명령에 대한 자세한 설명서를 온라인으로 표시합니다.
dotnet migrate 유효한 Preview 2 프로젝트를 .NET Core SDK 1.0 프로젝트로 마이그레이션합니다.
dotnet msbuild MSBuild 명령줄에 대한 액세스를 제공합니다.
dotnet new 지정된 템플릿에 대한 C# 또는 F# 프로젝트를 초기화합니다.
dotnet pack 코드의 NuGet 패키지를 만듭니다.
dotnet 게시 .NET Framework 종속 또는 자체 포함 애플리케이션을 게시합니다.
dotnet 복원 지정된 애플리케이션에 대한 종속성을 복원합니다.
dotnet run 원본에서 애플리케이션을 실행합니다.
dotnet sdk check 설치된 SDK 및 런타임 버전의 up-to-date 상태를 표시합니다.
dotnet sln 솔루션 파일에서 프로젝트를 추가, 제거 및 나열하는 옵션입니다.
dotnet store 런타임 패키지 저장소에 어셈블리를 저장합니다.
dotnet 테스트 테스트 실행기를 사용하여 테스트를 실행합니다.

프로젝트 참조

명령어 기능
dotnet reference add - .NET 참조 추가 명령어 프로젝트 참조를 추가합니다.
dotnet 참조 목록 프로젝트 참조를 나열합니다.
dotnet reference remove 프로젝트 참조를 제거합니다.

NuGet 패키지

명령어 기능
dotnet package add NuGet 패키지를 추가합니다.
dotnet 패키지 목록 NuGet 패키지를 나열합니다.
dotnet 패키지 제거 NuGet 패키지를 제거합니다.
dotnet 패키지 검색 NuGet 패키지를 검색합니다.

NuGet 명령

명령어 기능
dotnet nuget delete 서버에서 패키지를 삭제하거나 목록을 해제합니다.
dotnet nuget push 패키지를 서버에 푸시하고 게시합니다.
dotnet nuget locals http-request 캐시, 임시 캐시 또는 컴퓨터 전체 글로벌 패키지 폴더와 같은 로컬 NuGet 리소스를 지우거나 나열합니다.
dotnet nuget 소스 추가 NuGet 원본을 추가합니다.
dotnet nuget disable source NuGet 소스를 사용하지 않도록 설정합니다.
dotnet nuget enable source NuGet 원본을 사용하도록 설정합니다.
dotnet nuget 목록 원본 구성된 모든 NuGet 원본을 나열합니다.
dotnet nuget remove source NuGet 원본을 제거합니다.
dotnet nuget 업데이트 원본 NuGet 원본을 업데이트합니다.

워크로드 명령

명령어 기능
dotnet 워크로드 설치 선택적 워크로드를 설치합니다.
dotnet 워크로드 목록 설치된 모든 워크로드를 나열합니다.
dotnet 워크로드 복구 설치된 모든 워크로드를 복구합니다.
dotnet 워크로드 검색 선택한 워크로드 또는 사용 가능한 모든 워크로드를 나열합니다.
dotnet 워크로드 제거 워크로드를 제거합니다.
dotnet 워크로드 업데이트 설치된 모든 워크로드를 다시 설치합니다.

전역, 도구 경로 및 로컬 도구 명령

도구는 NuGet 패키지에서 설치되고 명령 프롬프트에서 호출되는 콘솔 애플리케이션입니다. 직접 도구를 작성하거나 타사에서 작성한 도구를 설치할 수 있습니다. 도구를 전역 도구, 도구 경로 도구 및 로컬 도구라고도 합니다. 자세한 내용은 .NET 도구 개요를 참조하세요.

명령어 기능
dotnet tool install 컴퓨터에 도구를 설치합니다.
dotnet 도구 목록 컴퓨터에 현재 설치된 모든 전역, 도구 경로 또는 로컬 도구를 나열합니다.
dotnet 도구 검색 NuGet.org 이름 또는 메타데이터에 지정된 검색 용어가 있는 도구를 검색합니다.
dotnet tool uninstall 컴퓨터에서 도구를 제거합니다.
dotnet 도구 업데이트 컴퓨터에 설치된 도구를 업데이트합니다.

추가 도구

.NET SDK의 일부로 사용할 수 있는 추가 도구는 다음과 같습니다.

도구 기능
dev-certs 개발 인증서를 만들고 관리합니다.
ef Entity Framework Core 명령줄 도구.
사용자 비밀 개발 사용자 비밀을 관리합니다.
시계 소스 코드의 변경 내용을 감지하면 애플리케이션을 다시 시작하거나 핫으로 다시 로드하는 파일 감시자입니다.

각 도구에 대한 자세한 내용은 다음을 입력합니다 dotnet <tool-name> --help.

예시

새 .NET 콘솔 애플리케이션을 만듭니다.

dotnet new console

지정된 디렉터리에서 프로젝트 및 해당 종속성을 빌드합니다.

dotnet build

애플리케이션 실행:

dotnet exec myapp.dll
dotnet myapp.dll

참고하십시오