이 문서의 적용 대상: ✔️ .NET 6 SDK 이상 버전
이름
dotnet tool install - 머신에 지정된 .NET 도구를 설치합니다.
개요
dotnet tool install <PACKAGE_NAME> -g|--global
[--allow-downgrade] [--allow-roll-forward] [-a|--arch <ARCHITECTURE>]
[--add-source <SOURCE>] [--configfile <FILE>] [--disable-parallel]
[--framework <FRAMEWORK>] [--ignore-failed-sources] [--interactive]
[--no-cache] [--prerelease] [--source <SOURCE>]
[--tool-manifest <PATH>] [-v|--verbosity <LEVEL>]
[--version <VERSION_NUMBER>]
dotnet tool install <PACKAGE_NAME> --tool-path <PATH>
[--allow-downgrade] [--allow-roll-forward] [-a|--arch <ARCHITECTURE>]
[--add-source <SOURCE>] [--configfile <FILE>] [--disable-parallel]
[--framework <FRAMEWORK>] [--ignore-failed-sources] [--interactive]
[--no-cache] [--prerelease] [--source <SOURCE>]
[--tool-manifest <PATH>] [-v|--verbosity <LEVEL>]
[--version <VERSION_NUMBER>]
dotnet tool install <PACKAGE_NAME> [--local]
[--allow-downgrade] [--allow-roll-forward] [-a|--arch <ARCHITECTURE>]
[--add-source <SOURCE>] [--configfile <FILE>]
[--create-manifest-if-needed] [--disable-parallel]
[--framework <FRAMEWORK>] [--ignore-failed-sources] [--interactive]
[--no-cache] [--prerelease] [--source <SOURCE>]
[--tool-manifest <PATH>] [-v|--verbosity <LEVEL>]
[--version <VERSION_NUMBER>]
dotnet tool install -h|--help
설명
dotnet tool install 명령은 머신에 .NET 도구를 설치하는 방법을 제공합니다. 이 명령을 사용하려면 다음 설치 옵션 중 하나를 지정합니다.
- 전역 도구를 기본 위치에 설치하려면
--global옵션을 사용합니다. - 전역 도구를 사용자 지정 위치에 설치하려면
--tool-path옵션을 사용합니다. - 로컬 도구를 설치하려면
--global및--tool-path옵션을 생략합니다.
경고
옵션으로 --tool-path 지정한 디렉터리가 안전한지 확인합니다. 이 위치에 설치된 도구는 직접 실행할 수 있으므로 신뢰할 수 없거나 공유된 경로를 사용하면 보안 위험이 발생할 수 있습니다.
설치 위치
전역 도구
-g 또는 --global 옵션을 지정하면 전역 도구는 기본적으로 다음 디렉터리에 설치됩니다.
| 운영 체제 | 경로 |
|---|---|
| 리눅스/맥OS | $HOME/.dotnet/tools |
| 윈도우즈 | %USERPROFILE%\.dotnet\tools |
실제 도구 이진 파일은 형제 .store 디렉터리 깊숙이 중첩되지만 실행 파일은 전역적으로 설치된 각 도구에 대해 이러한 폴더에 생성됩니다.
참고 항목
명령줄 도구를 dotnet tool설치한 후 Linux에서 도구는 경로에서 $HOME/.dotnet/tools 만 실행할 수 있습니다.
모든 디렉터리에서 도구를 실행하도록 하려면 환경 변수를 업데이트합니다 PATH .
셸에서 업데이트 PATH 된 환경 변수를 영구적으로 설정하려면 셸 설정을 업데이트합니다.
의 경우 Bash파일입니다 $HOME/.bashrc .
--tool-path 도구
명시적 도구 경로가 있는 도구는 --tool-path 매개 변수가 가리키도록 지정한 위치에 저장됩니다. 전역 도구와 동일한 방식으로 저장됩니다. 형제 .store 디렉터리에 실제 이진 파일이 있는 실행 가능한 이진 파일입니다.
로컬 도구
로컬 도구는 설정한 대로 NuGet 전역 디렉터리에 저장됩니다. 도구가 해당 위치 내에 있는 위치를 가리키는 각 로컬 도구에 대해 $HOME/.dotnet/toolResolverCache에 shim 파일이 있습니다.
로컬 도구에 대한 참조는 현재 디렉터리 아래의 .config 디렉터리의 dotnet-tools.json 파일에 추가됩니다. .NET 10부터 매니페스트 파일이 아직 없으면 자동으로 만들어집니다. 다음 명령을 실행하여 수동으로 만들 수도 있습니다.
dotnet new tool-manifest
자세한 내용은 로컬 도구 설치를 참조하세요.
인수
PACKAGE_NAME설치할 .NET 도구를 포함하는 NuGet 패키지의 이름/ID입니다.
.NET 10.0.100 SDK부터 이름/ID 및 버전을 구분하여
@.NET 도구를 설치합니다.
옵션
-
--allow-downgrade.NET 도구 패키지를 설치하거나 업데이트할 때 패키지 다운그레이드를 허용합니다. "요청된 버전 x.x.x가 기존 버전 x.x.x보다 낮습니다."라는 경고를 표시하지 않습니다.
--allow-roll-forward.NET 9.0 SDK부터 사용할 수 있습니다. 대상으로 하는 런타임이 설치되지 않은 경우 도구에서 최신 버전의 .NET 런타임을 사용하도록 허용합니다.
-
-a|--arch <ARCHITECTURE>대상 아키텍처를 지정합니다. 이는 제공된 값이 기본 RID와 결합되는 RID(런타임 식별자)를 설정하는 약식 구문입니다. 예를 들어,
win-x64머신에서--arch x86을 지정하면 RID가win-x86으로 설정됩니다. 이 옵션을 사용하는 경우-r|--runtime옵션을 사용하지 마세요. .NET 6 미리 보기 7 이후 사용 가능합니다. -
--add-source <SOURCE>설치 중에 사용할 추가 NuGet 패키지 원본을 추가합니다. 피드는 우선 순위에 따라 순차적으로 액세스하는 것이 아니라 병렬로 액세스합니다. 동일한 패키지와 버전이 여러 피드에 있는 경우 가장 빠른 피드가 적용됩니다. 자세한 내용은 NuGet 패키지를 설치하면 어떻게 되나요?를 참조하세요.
-
--configfile <FILE>사용할 NuGet 구성 파일(nuget.config)입니다. 지정된 경우 이 파일의 설정만 사용됩니다. 지정되지 않으면 현재 디렉터리의 구성 파일의 계층 구조가 사용됩니다. 자세한 내용은 일반적인 NuGet 구성을 참조하세요.
--create-manifest-if-needed.NET 8 SDK부터 사용할 수 있습니다.
로컬 도구에 적용됩니다. 매니페스트를 찾기 위해 검색 알고리즘은 디렉터리 트리에서
dotnet-tools.json파일이 포함된.config또는dotnet-tools.json폴더를 검색합니다.도구 매니페스트를 찾을
--create-manifest-if-needed수 없고 옵션이 설정falseCannotFindAManifestFile되면 오류가 발생합니다.도구 매니페스트를 찾을
--create-manifest-if-needed수 없고 옵션이 지정되지 않은 경우 .NET 10 이상 버전으로 설정된true경우 도구는 자동으로 매니페스트를 만듭니다. 다음과 같이 매니페스트에 대한 폴더를 선택합니다.-
.git하위 폴더가 있는 디렉터리를 검색하는 디렉터리 트리를 탐색합니다. 발견되면 해당 디렉터리에 매니페스트를 만듭니다. - 이전 단계에서 디렉터리를 찾지 못하는 경우 디렉터리 트리에서 파일 또는
.sln파일이 있는.git디렉터리를 검색합니다. 발견되면 해당 디렉터리에 매니페스트를 만듭니다. - 이전 두 단계 중 어느 단계도 디렉터리를 찾지 못하면 현재 작업 디렉터리에 매니페스트를 만듭니다.
매니페스트를 찾는 방법에 대한 자세한 내용은 로컬 도구 설치를 참조 하세요.
.NET 10부터 도구 매니페스트가 없으면 매니페스트가 자동으로 만들어집니다. 이 변경은 호환성이 손상되는 변경일 수 있습니다. 를 전달
--create-manifest-if-needed=false하여 옵트아웃할 수 있습니다.경고
다운로드 폴더 또는 공유 위치에서 도구 명령을 실행하지 마세요. CLI는 디렉터리 트리를 따라 이동하여 도구 매니페스트를 찾습니다. 이로 인해 예상하지 못한 매니페스트를 사용할 수 있습니다. 항상 신뢰할 수 있는 프로젝트별 디렉터리에서 도구 명령을 실행합니다.
-
-
--disable-parallel여러 프로젝트를 병렬로 복원하는 것을 방지합니다.
--framework <FRAMEWORK>도구를 설치할 대상 프레임워크를 지정합니다. 기본적으로 .NET SDK는 가장 적합한 대상 프레임워크를 선택하려고 합니다.
-g|--global사용자 전체 설치임을 지정합니다.
--tool-path옵션과 함께 사용할 수 없습니다.--global및--tool-path옵션을 모두 생략하면 로컬 도구 설치가 지정됩니다.-
--source <SOURCE>NuGet 패키지의 원본을 지정합니다.
-
-?|-h|--help명령을 사용하는 방법에 대한 설명을 출력합니다.
--ignore-failed-sources패키지 소스 오류를 경고로 처리합니다.
-
--interactive명령이 중지되고 사용자 입력 또는 작업을 대기할 수 있도록 허용합니다. 예를 들어 인증을 완료합니다.
--local도구 및 로컬 도구 매니페스트를 업데이트합니다.
--global옵션 또는--tool-path옵션과 함께 사용할 수 없습니다.--no-cache또는--no-http-cache패키지 및 HTTP 요청을 캐시하지 않습니다.
--prerelease시험판 패키지를 포함합니다.
--tool-manifest <PATH>매니페스트 파일 경로입니다.
--tool-path <PATH>전역 도구를 설치할 위치를 지정합니다. PATH는 절대적이거나 상대적일 수 있습니다. 경로가 존재하지 않는 경우 이 명령은 해당 경로를 만들려고 합니다.
--global및--tool-path옵션을 모두 생략하면 로컬 도구 설치가 지정됩니다.-
-v|--verbosity <LEVEL>명령의 세부 정보 표시 수준을 설정합니다. 허용되는 값은
q[uiet],m[inimal],n[ormal],d[etailed],diag[nostic]입니다. 자세한 내용은 LoggerVerbosity를 참조하세요. --version <VERSION_NUMBER>설치할 도구의 버전입니다. 기본적으로 안정적인 최신 버전이 설치됩니다. 도구의 미리 보기 또는 이전 버전을 설치할 경우 이 옵션을 사용합니다.
.NET 8
--version Major.Minor.Patch부터는 목록에 없는 버전을 포함하여 특정 주/부/패치 버전을 참조합니다. 대신 특정 주/부 버전의 최신 버전을 얻으려면--version Major.Minor.*(을)를 사용합니다.
예제
dotnet tool install -g dotnetsaydotnetsay를 기본 위치에 전역 도구로 설치합니다.
dotnet tool install dotnetsay --tool-path c:\global-toolsdotnetsay를 특정 Windows 디렉터리에 전역 도구로 설치합니다.
dotnet tool install dotnetsay --tool-path ~/bindotnetsay를 특정 Linux/macOS 디렉터리에 전역 도구로 설치합니다.
dotnet tool install -g dotnetsay --version 2.0.0dotnetsay의 버전 2.0.0을 전역 도구로 설치합니다.
dotnet tool install -g dotnetsay@2.1.7dotnetsay 버전 2.1.7을 전역 도구로 설치합니다.
dotnet tool install dotnetsaydotnetsay를 현재 디렉터리용 로컬 도구로 설치합니다.
dotnet tool install dotnetsay@2.1.7현재 디렉터리에 대한 로컬 도구로 dotnetsay 버전 2.1.7을 설치합니다.
dotnet tool install -g dotnetsay --verbosity minimaldotnetsay를 세부 정보 표시가 최소화된 전역 도구로 설치합니다. 전역 도구의 기본 세부 정보 표시는 자동입니다.
dotnet tool install -g dotnetsay --allow-roll-forward대상 런타임을 사용할 수 없는 경우 dotnetsay 를 전역 도구로 설치하고 최신 .NET 버전에서 실행할 수 있습니다.
참고 항목
.NET