Средства интерфейса командной строки (CLI) .NET Core.NET Core command-line interface (CLI) tools

Интерфейс командной строки (CLI) .NET Core — это новая кроссплатформенная цепочка инструментов для разработки приложений .NET.The .NET Core command-line interface (CLI) is a new cross-platform toolchain for developing .NET applications. Он является той основой, на которую могут опираться инструменты более высоких уровней, такие как интегрированные среды разработки (IDE), редакторы и оркестраторы сборки.The CLI is a foundation upon which higher-level tools, such as Integrated Development Environments (IDEs), editors, and build orchestrators, can rest.

УстановкаInstallation

Можно использовать либо собственные установщики, либо скрипты оболочки для установки:Either use the native installers or use the installation shell scripts:

  • Собственные установщики в основном применяются на компьютерах разработчиков и используют собственные механизмы установки каждой поддерживаемой платформы, например пакеты DEB в Ubuntu или пакеты MSI в Windows.The native installers are primarily used on developer's machines and use each supported platform's native install mechanism, for instance, DEB packages on Ubuntu or MSI bundles on Windows. Эти установщики устанавливают и настраивают окружение для немедленного использования разработчиком, но им требуются права администратора на компьютере.These installers install and configure the environment for immediate use by the developer but require administrative privileges on the machine. Инструкции по установке см. в руководстве по установке .NET Core.You can view the installation instructions in the .NET Core installation guide.
  • Скрипты оболочки применяются в первую очередь для настройки серверов сборки или установки средств без прав администратора.Shell scripts are primarily used for setting up build servers or when you wish to install the tools without administrative privileges. Скрипты установки не устанавливают на компьютере необходимые компоненты, поэтому их следует установить вручную.Install scripts don't install prerequisites on the machine, which must be installed manually. Дополнительные сведения см. в справочном разделе по скриптам установки.For more information, see the install script reference topic. Сведения о настройке интерфейса командной строки на сервере сборки с непрерывной интеграцией см. в разделе Использование пакета SDK и средств .NET Core при непрерывной интеграции (CI).For information on how to set up CLI on your continuous integration (CI) build server, see Using .NET Core SDK and tools in Continuous Integration (CI).

По умолчанию интерфейс выполняет установку параллельно, чтобы на одном компьютере могли сосуществовать разные версии средств CLI.By default, the CLI installs in a side-by-side (SxS) manner, so multiple versions of the CLI tools can coexist on a single machine. Сведения о том, как определить, какая из нескольких версий используется на компьютере, см. в разделе Драйвер.Determining which version is used on a machine where multiple versions are installed is explained in more detail in the Driver section.

Команды CLICLI commands

По умолчанию устанавливаются следующие команды:The following commands are installed by default:

Интерфейс CLI использует модель расширяемости, которая позволяет указывать дополнительные средства для проектов.The CLI adopts an extensibility model that allows you to specify additional tools for your projects. Дополнительные сведения см. в разделе Модель расширяемости CLI .NET Core.For more information, see the .NET Core CLI extensibility model topic.

Структура командCommand structure

Структура команд CLI состоит из драйвера ("dotnet"), самой команды и ее возможных аргументов и параметров.CLI command structure consists of the driver ("dotnet"), the command (or "verb"), and possibly command arguments and options. Этот шаблон используется в большинстве операций интерфейса командной строки, таких как создание консольного приложения и его запуск из командной строки, как показывают следующие команды при выполнении из каталога my_app:You see this pattern in most CLI operations, such as creating a new console app and running it from the command line as the following commands show when executed from a directory named my_app:

dotnet new console
dotnet build --output /build_output
dotnet /build_output/my_app.dll

ДрайверDriver

Драйвер называется dotnet и имеет два вида ответственности — выполнение платформозависимого приложения или выполнение команды.The driver is named dotnet and has two responsibilities, either running a framework-dependent app or executing a command.

Для запуска платформозависимого приложения укажите его драйвера, например dotnet /path/to/my_app.dll.To run a framework-dependent app, specify the app after the driver, for example, dotnet /path/to/my_app.dll. При выполнении команды из папки, где находится библиотека DLL приложения, просто выполните dotnet my_app.dll.When executing the command from the folder where the app's DLL resides, simply execute dotnet my_app.dll. Если вы хотите использовать конкретную версию среды выполнения .NET Core, используйте параметр --fx-version <VERSION> (см. справку по команде dotnet).If you want to use a specific version of the .NET Core Runtime, use the --fx-version <VERSION> option (see the dotnet command reference).

При указании команды для драйвера dotnet.exe запускает процесс выполнения команды CLI.When you supply a command to the driver, dotnet.exe starts the CLI command execution process. Например:For example:

> dotnet build

Сначала драйвер определяет нужную версию пакета SDK.First, the driver determines the version of the SDK to use. Если файл "global.json" отсутствует, используется последняя доступная версия пакета SDK.If there is no 'global.json', the latest version of the SDK available is used. Это может быть предварительная или стабильная версия, в зависимости от того, какая версия является последней на компьютере.This might be either a preview or stable version, depending on what is latest on the machine. После определения версии пакета SDK он выполняет команду.Once the SDK version is determined, it executes the command.

КомандаCommand ("verb")

Команда служит для выполнения действия.The command (or "verb") is simply a command that performs an action. Например, dotnet build проводит сборку кода.For example, dotnet build builds your code. dotnet publish публикует код.dotnet publish publishes your code. Команды реализуются как консольное приложение с использованием соглашения dotnet {verb}.The commands are implemented as a console application using a dotnet {verb} convention.

АргументыArguments

Аргументы, указываемые в командной строке, передаются непосредственно в вызываемую команду.The arguments you pass on the command line are the arguments to the command invoked. Например, если выполнить dotnet publish my_app.csproj, аргумент my_app.csproj указывает публикуемый проект и передается в команду publish.For example when you execute dotnet publish my_app.csproj, the my_app.csproj argument indicates the project to publish and is passed to the publish command.

ПараметрыOptions

Параметры, указываемые в командной строке, передаются непосредственно в вызываемую команду.The options you pass on the command line are the options to the command invoked. Например, при выполнении dotnet publish --output /build_output параметр --output и его значение передаются в команду publish.For example when you execute dotnet publish --output /build_output, the --output option and its value are passed to the publish command.

Перенос из проекта project.jsonMigration from project.json

Если вы использовали средства предварительной версии 2 для создания проектов на основе project.json, обратитесь к разделу о dotnet migrate за информацией о переносе проекта в MSBuild/.csproj, чтобы его можно было использовать со средствами версии выпуска.If you used Preview 2 tooling to produce project.json-based projects, consult the dotnet migrate topic for information on migrating your project to MSBuild/.csproj for use with release tooling. Для проектов .NET Core, созданных до выхода средств предварительной версии 2, обновите проект вручную, выполнив указания из раздела Переход с DNX на интерфейс CLI .NET Core (project.json) и воспользовавшись dotnet migrate, либо обновите свои проекты напрямую.For .NET Core projects created prior to the release of Preview 2 tooling, either manually update the project following the guidance in Migrating from DNX to .NET Core CLI (project.json) and then use dotnet migrate or directly upgrade your projects.

См. такжеSee also