dotnet sln

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

이름

dotnet sln - .NET 솔루션 파일의 프로젝트를 나열하거나 수정합니다.

개요

dotnet sln [<SOLUTION_FILE>] [command]

dotnet sln [command] -h|--help

설명

dotnet sln 명령은 솔루션 파일의 프로젝트를 나열 및 수정하는 간편한 옵션을 제공합니다.

솔루션 파일 만들기

dotnet sln 명령을 사용하려면 솔루션 파일이 이미 있어야 합니다. 템플릿을 만들어야 하는 경우 sln 템플릿 이름과 함께 dotnet new 명령을 사용합니다.

다음 예에서는 현재 폴더에 폴더와 이름이 같은 .sln 파일을 만듭니다.

dotnet new sln

다음 예에서는 지정된 파일 이름을 사용하여 현재 폴더에 .sln 파일을 만듭니다.

dotnet new sln --name MySolution

다음 예에서는 폴더와 동일한 이름으로 지정된 폴더에 .sln 파일을 만듭니다.

dotnet new sln --output MySolution

인수

  • SOLUTION_FILE

    사용할 솔루션 파일입니다. 이 인수를 생략하면 명령은 현재 디렉터리에서 파일을 검색합니다. 솔루션 파일이 없거나 여러 개 있는 경우 명령이 실패합니다.

옵션

  • -?|-h|--help

    명령을 사용하는 방법에 대한 설명을 출력합니다.

명령

list

솔루션 파일의 모든 프로젝트를 나열합니다.

개요

dotnet sln list [-h|--help]

인수

  • SOLUTION_FILE

    사용할 솔루션 파일입니다. 이 인수를 생략하면 명령은 현재 디렉터리에서 파일을 검색합니다. 솔루션 파일이 없거나 여러 개 있는 경우 명령이 실패합니다.

옵션

  • -?|-h|--help

    명령을 사용하는 방법에 대한 설명을 출력합니다.

add

솔루션 파일에 하나 이상의 프로젝트를 추가합니다.

개요

dotnet sln [<SOLUTION_FILE>] add [--in-root] [-s|--solution-folder <PATH>] <PROJECT_PATH> [<PROJECT_PATH>...]
dotnet sln add [-h|--help]

인수

  • SOLUTION_FILE

    사용할 솔루션 파일입니다. 지정되지 않은 경우 이 명령은 현재 디렉터리를 검색하고, 여러 솔루션 파일이 있을 경우 실패합니다.

  • PROJECT_PATH

    솔루션에 추가할 프로젝트의 경로입니다. Unix/Linux 셸 GLOB 패턴 확장은 dotnet sln 명령에 의해 올바르게 처리됩니다.

    PROJECT_PATH에 프로젝트 폴더가 포함된 폴더가 포함된 경우 경로의 해당 부분은 솔루션 폴더를 만드는 데 사용됩니다. 예를 들어 다음 명령은 솔루션 폴더 folder1/folder2myapp이 있는 솔루션을 만듭니다.

    dotnet new sln
    dotnet new console --output folder1/folder2/myapp
    dotnet sln add folder1/folder2/myapp
    

    --in-root 또는 -s|--solution-folder <PATH> 옵션을 사용하여 이 기본 동작을 재정의할 수 있습니다.

옵션

  • -?|-h|--help

    명령을 사용하는 방법에 대한 설명을 출력합니다.

  • --in-root

    솔루션 폴더를 만드는 대신, 솔루션의 루트에 프로젝트를 배치합니다. -s|--solution-folder와 함께 사용할 수 없습니다.

  • -s|--solution-folder <PATH>

    프로젝트를 추가하려는 대상 솔루션 폴더 경로입니다. --in-root와 함께 사용할 수 없습니다.

remove

솔루션 파일에서 하나 이상의 프로젝트를 제거합니다.

개요

dotnet sln [<SOLUTION_FILE>] remove <PROJECT_PATH> [<PROJECT_PATH>...]
dotnet sln [<SOLUTION_FILE>] remove [-h|--help]

인수

  • SOLUTION_FILE

    사용할 솔루션 파일입니다. 지정되지 않은 경우 이 명령은 현재 디렉터리를 검색하고, 여러 솔루션 파일이 있을 경우 실패합니다.

  • PROJECT_PATH

    솔루션에서 제거할 프로젝트의 경로입니다. Unix/Linux 셸 GLOB 패턴 확장은 dotnet sln 명령에 의해 올바르게 처리됩니다.

옵션

  • -?|-h|--help

    명령을 사용하는 방법에 대한 설명을 출력합니다.

예제

  • 솔루션의 프로젝트를 나열합니다.

    dotnet sln todo.sln list
    
  • 솔루션에 C# 프로젝트를 추가합니다.

    dotnet sln add todo-app/todo-app.csproj
    
  • 솔루션에서 C# 프로젝트를 제거합니다.

    dotnet sln remove todo-app/todo-app.csproj
    
  • 솔루션의 루트에 여러 C# 프로젝트를 추가합니다.

    dotnet sln todo.sln add todo-app/todo-app.csproj back-end/back-end.csproj --in-root
    
  • 솔루션에 여러 C# 프로젝트를 추가합니다.

    dotnet sln todo.sln add todo-app/todo-app.csproj back-end/back-end.csproj
    
  • 솔루션에서 여러 C# 프로젝트를 제거합니다.

    dotnet sln todo.sln remove todo-app/todo-app.csproj back-end/back-end.csproj
    
  • 와일드카드 사용 패턴을 사용하여 솔루션에 여러 C# 프로젝트를 추가합니다(Unix/Linux만 해당).

    dotnet sln todo.sln add **/*.csproj
    
  • 와일드카드 사용 패턴을 사용하여 솔루션에 여러 C# 프로젝트를 추가합니다(Windows PowerShell만 해당).

    dotnet sln todo.sln add (ls -r **/*.csproj)
    
  • 와일드카드 사용 패턴을 사용하여 솔루션에서 여러 C# 프로젝트를 제거합니다(Unix/Linux만 해당).

    dotnet sln todo.sln remove **/*.csproj
    
  • 와일드카드 사용 패턴을 사용하여 솔루션에서 여러 C# 프로젝트를 제거합니다(Windows PowerShell만 해당).

    dotnet sln todo.sln remove (ls -r **/*.csproj)
    
  • 솔루션, 콘솔 앱 및 두 개의 클래스 라이브러리를 만듭니다. 솔루션에 프로젝트를 추가하고 dotnet sln--solution-folder 옵션을 사용하여 클래스 라이브러리를 솔루션 폴더로 구성합니다.

    dotnet new sln -n mysolution
    dotnet new console -o myapp
    dotnet new classlib -o mylib1
    dotnet new classlib -o mylib2
    dotnet sln mysolution.sln add myapp\myapp.csproj
    dotnet sln mysolution.sln add mylib1\mylib1.csproj --solution-folder mylibs
    dotnet sln mysolution.sln add mylib2\mylib2.csproj --solution-folder mylibs
    

    다음 스크린샷은 Visual Studio 2019 솔루션 탐색기에서 결과를 보여 줍니다.

    Solution Explorer showing class library projects grouped into a solution folder.

참고 항목