Установка CLI
Вы можете установить CLI следующими способами:
- Интерактивная установка CLI с помощью скрипта
- Неинтерактивная установка CLI с помощью скрипта
- Установка без использования скрипта
Интерактивная установка CLI с помощью скрипта
В разделе представлена инструкция по интерактивной установке CLI с помощью скрипта, который:
- Определяет вашу операционную систему и архитектуру.
- Скачивает исполняемый файл с последней стабильной версией CLI для вашего окружения.
- Проверяет работоспособность.
- Добавляет CLI в переменную окружения
PATH. - Генерирует настройки автодополнения.
Совет
Команда автоматически скачает скрипт установки и сразу выполнит его. Чтобы предварительно ознакомиться с содержимым скрипта, скачайте его вручную и запустите после проверки.
-
Выполните команду:
curl -sSL https://storage.yandexcloud.net/yandexcloud-yc/install.sh | bashСкрипт установит CLI и добавит путь до исполняемого файла в переменную окружения
PATH.Примечание
Скрипт дополнит переменную
PATHтолько если его запустить в командных оболочкахbashилиzsh.Если вы запустили скрипт в другой оболочке, добавьте путь до CLI в переменную
PATHсамостоятельно.Важно
Для корректной работы автодополнения при использовании
zshтребуется версия оболочки не ниже 5.1, а при использованииbashна CentOS и производных дистрибутивах необходимо установить пакетbash-completion. -
После завершения установки перезапустите командную оболочку.
Совет
Команда автоматически скачает скрипт установки и сразу выполнит его. Чтобы предварительно ознакомиться с содержимым скрипта, скачайте его вручную и запустите после проверки.
-
Выполните команду:
curl -sSL https://storage.yandexcloud.net/yandexcloud-yc/install.sh | bashСкрипт установит CLI и добавит путь до исполняемого файла в переменную окружения
PATH. -
Перезапустите командную оболочку, чтобы перезагрузить переменные окружения.
Совет
Команда автоматически скачает скрипт установки и сразу выполнит его. Чтобы предварительно ознакомиться с содержимым скрипта, скачайте его вручную и запустите после проверки.
Для Windows CLI можно установить с помощью PowerShell или командной строки:
-
Для установки с помощью PowerShell:
-
Выполните команду:
iex (New-Object System.Net.WebClient).DownloadString('https://storage.yandexcloud.net/yandexcloud-yc/install.ps1') -
Скрипт установки спросит, нужно ли добавить путь до
ycв переменную PATH:Add yc installation dir to your PATH? [Y/n] -
Введите
Y. После этого Yandex Cloud CLI можно пользоваться, командную оболочку перезапускать не нужно.
-
-
Для установки с помощью командной строки:
-
Выполните команду:
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://storage.yandexcloud.net/yandexcloud-yc/install.ps1'))" && SET "PATH=%PATH%;%USERPROFILE%\yandex-cloud\bin" -
Скрипт установки спросит, нужно ли добавить путь до
ycв переменную PATH:Add yc installation dir to your PATH? [Y/n] -
Введите
Y. -
Перезапустите командную оболочку, чтобы перезагрузить переменные окружения.
-
Включить автодополнение
CLI поддерживает автодополнение команд в командных оболочках bash, zsh и PowerShell. Чтобы включить автодополнение:
В bash автодополнение работает сразу после установки. На CentOS и производных дистрибутивах предварительно установите пакет bash-completion.
Чтобы включить автодополнение в zsh:
-
Откройте
~/.zshrcи добавьте в начало файла следующие строки:autoload -Uz compinit compinitСкрипт установки
ycдобавляет строки инициализации CLI и автодополнения в конец~/.zshrc. Разместите вызовыautoloadиcompinitвыше этих строк, иначе при запуске терминала появится ошибкаcommand not found: compdef.Итоговый
~/.zshrcдолжен выглядеть так:autoload -Uz compinit compinit # Строки ниже добавлены скриптом установки yc автоматически. if [ -f "$HOME/yandex-cloud/path.bash.inc" ]; then source "$HOME/yandex-cloud/path.bash.inc"; fi if [ -f "$HOME/yandex-cloud/completion.zsh.inc" ]; then source "$HOME/yandex-cloud/completion.zsh.inc"; fi -
Перезапустите командную оболочку или выполните команду
exec -l $SHELL. -
Проверьте, что автодополнение работает: введите
ycи нажмите Tab дважды. Должен появиться список доступных команд.
Примечание
Ниже приведена инструкция для настройки автодополнения в командной оболочке zsh, которая используется в macOS по умолчанию.
Если вы используете bash или macOS 10.14 Mojave и более ранних версий, где по умолчанию установлен bash, вносите изменения в файл ~/.bash_profile.
Чтобы включить автодополнение:
-
Откройте
~/.zshrcи добавьте в начало файла следующие строки:autoload -Uz compinit compinitСкрипт установки
ycдобавляет строки инициализации CLI и автодополнения в конец~/.zshrc. Разместите вызовыautoloadиcompinitвыше этих строк, иначе при запуске терминала появится ошибкаcommand not found: compdef.Итоговый
~/.zshrcдолжен выглядеть так:autoload -Uz compinit compinit # Строки ниже добавлены скриптом установки yc автоматически. if [ -f "$HOME/yandex-cloud/path.bash.inc" ]; then source "$HOME/yandex-cloud/path.bash.inc"; fi if [ -f "$HOME/yandex-cloud/completion.zsh.inc" ]; then source "$HOME/yandex-cloud/completion.zsh.inc"; fiУстановка расширенных автодополнений
Пакет
zsh-completionsрасширяет базовые автодополнения системы. Для автодополненияycон не обязателен.Чтобы установить пакет:
-
Установите Homebrew
. -
Установите пакет
zsh-completions:brew install zsh-completionsСовет
Если вы используете
bash, вместоzsh-completionsустановите пакетbash-completion. -
Добавьте блок с
FPATHперед строкамиautoloadиcompinit. Итоговый~/.zshrcдолжен выглядеть так:if type brew &>/dev/null; then FPATH=$(brew --prefix)/share/zsh-completions:$FPATH fi autoload -Uz compinit compinit # Строки ниже добавлены скриптом установки yc автоматически. if [ -f "$HOME/yandex-cloud/path.bash.inc" ]; then source "$HOME/yandex-cloud/path.bash.inc"; fi if [ -f "$HOME/yandex-cloud/completion.zsh.inc" ]; then source "$HOME/yandex-cloud/completion.zsh.inc"; fi
-
-
Перезапустите командную оболочку или выполните команду
exec -l $SHELL. -
Проверьте, что автодополнение работает: введите
ycи нажмите Tab дважды. Должен появиться список доступных команд.
Важно
Автодополнение поддерживается только в PowerShell 7 и выше. Проверьте версию командой $PSVersionTable.PSVersion. Если версия ниже 7, установите актуальную версию:
winget install Microsoft.PowerShell
Или скачайте установщик вручную со страницы релизов PowerShell
Чтобы включить автодополнение в PowerShell:
-
Если у вас нет профиля PowerShell, создайте его и откройте в текстовом редакторе:
New-Item -Path $PROFILE -Type File -Force notepad $PROFILEВместо
notepadможно использовать любой удобный редактор. Например, для VS Code используйте командуcode $PROFILE. -
Добавьте в файл следующий код и сохраните:
Register-ArgumentCompleter -Native -CommandName yc -ScriptBlock { param($wordToComplete, $commandAst, $cursorPosition) $elements = $commandAst.CommandElements $allTokens = $elements | Select-Object -Skip 1 | ForEach-Object { $_.ToString() } $allTokens = $allTokens | Where-Object { $_ -match '^[\x20-\x7E]+$' } if ($wordToComplete -ne '') { $completedTokens = $allTokens | Select-Object -SkipLast 1 $queryTokens = @($completedTokens) + @("") } else { $queryTokens = @($allTokens) + @("") } $result = yc __completeNoDesc @queryTokens 2>$null $completions = $result | Where-Object { $_ -notmatch '^\:' -and $_ -notmatch '^Completion' } | Where-Object { $_.StartsWith($wordToComplete) } if ($completions.Count -eq 0 -and $wordToComplete -ne '') { $queryTokensFallback = @($completedTokens) + @($wordToComplete) $resultFallback = yc __completeNoDesc @queryTokensFallback 2>$null $completions = $resultFallback | Where-Object { $_ -notmatch '^\:' -and $_ -notmatch '^Completion' } | Where-Object { $_.StartsWith($wordToComplete) } } $completions | ForEach-Object { $parts = $_ -split '\t' [System.Management.Automation.CompletionResult]::new( $parts[0], $parts[0], 'ParameterValue', $parts[0] ) } }Примечание
По умолчанию при нажатии Tab в PowerShell варианты подставляются по очереди. Чтобы вместо этого открывалось меню со всеми вариантами и всплывающими подсказками, добавьте в начало файла следующие строки:
Set-PSReadLineOption -ShowToolTips Set-PSReadLineKeyHandler -Key Tab -Function MenuCompleteЭти строки меняют поведение Tab во всех командах PowerShell, не только в
yc. -
Перезапустите PowerShell. Проверьте, что автодополнение работает: введите
ycи нажмите Tab. Должны появиться варианты доступных команд.
Если в процессе установки CLI возникла ошибка, смотрите раздел Решение проблем CLI.
Для дальнейшей работы с CLI создайте профиль.
Неинтерактивная установка CLI с помощью скрипта
Для использования CLI в скриптах можно использовать флаги для неинтерактивной установки:
Выполните команду:
curl https://storage.yandexcloud.net/yandexcloud-yc/install.sh | bash -s -- -h
Usage: install [options...]
Options:
-i [INSTALL_DIR] Installs to specified dir.
-r [RC_FILE] Automatically modify RC_FILE with PATH modification and shell completion.
-n Don't modify rc file and don't ask about it.
-a Automatically modify default rc file with PATH modification and shell completion.
-h Prints help.
Примеры использования:
-
Установка CLI в
/opt/yc, без изменений в файле.bashrc:curl https://storage.yandexcloud.net/yandexcloud-yc/install.sh | \ bash -s -- -i /opt/yc -n -
Установка CLI в директорию по умолчанию, в файл
.bashrcдобавляютсяcompletionиPATH:curl https://storage.yandexcloud.net/yandexcloud-yc/install.sh | \ bash -s -- -a
Для дальнейшей работы с CLI создайте профиль.
Установка без использования скрипта
Если возможность запускать скрипты на целевой системе отсутствует, вы можете напрямую загрузить и установить исполняемый файл с последней стабильной версией CLI.
Выберите инструкцию, исходя из вашей операционной системы и архитектуры процессора:
-
Перейдите в директорию, в которую хотите скачать CLI:
cd <путь_к_директории> -
Скачайте и распакуйте файл yc_linux_amd64.tar.gz
:curl -O https://storage.yandexcloud.net/yandexcloud-yc/release/yc_linux_amd64.tar.gz tar -xzf yc_linux_amd64.tar.gz -
Выдайте разрешения на запуск файла:
chmod +x yc -
Добавьте путь к директории с исполняемым файлом в
PATH:export PATH=$PATH:$PWD
-
Перейдите в директорию, в которую хотите скачать CLI:
cd <путь_к_директории> -
Скачайте и распакуйте файл yc_linux_386.tar.gz
:curl -O https://storage.yandexcloud.net/yandexcloud-yc/release/yc_linux_386.tar.gz tar -xzf yc_linux_386.tar.gz -
Выдайте разрешения на запуск файла:
chmod +x yc -
Добавьте путь к директории с исполняемым файлом в
PATH:export PATH=$PATH:$PWD
-
Перейдите в директорию, в которую хотите скачать CLI:
cd <путь_к_директории> -
Скачайте и распакуйте файл yc_linux_arm64.tar.gz
:curl -O https://storage.yandexcloud.net/yandexcloud-yc/release/yc_linux_arm64.tar.gz tar -xzf yc_linux_arm64.tar.gz -
Выдайте разрешения на запуск файла:
chmod +x yc -
Добавьте путь к директории с исполняемым файлом в
PATH:export PATH=$PATH:$PWD
-
Перейдите в директорию, в которую хотите скачать CLI:
cd <путь_к_директории> -
Скачайте и распакуйте файл yc_darwin_amd64.tar.gz
:curl -O https://storage.yandexcloud.net/yandexcloud-yc/release/yc_darwin_amd64.tar.gz tar -xzf yc_darwin_amd64.tar.gz -
Выдайте разрешения на запуск файла:
chmod +x yc -
Добавьте путь к директории с исполняемым файлом в
PATH:export PATH=$PATH:$PWD
-
Перейдите в директорию, в которую хотите скачать CLI:
cd <путь_к_директории> -
Скачайте и распакуйте файл yc_darwin_arm64.tar.gz
:curl -O https://storage.yandexcloud.net/yandexcloud-yc/release/yc_darwin_arm64.tar.gz tar -xzf yc_darwin_arm64.tar.gz -
Выдайте разрешения на запуск файла:
chmod +x yc -
Добавьте путь к директории с исполняемым файлом в
PATH:export PATH=$PATH:$PWD
-
Перейдите в директорию, в которую хотите скачать CLI:
cd <путь_к_директории> -
Скачайте и распакуйте файл yc_windows_amd64.zip
:curl.exe -O https://storage.yandexcloud.net/yandexcloud-yc/release/yc_windows_amd64.zip Expand-Archive yc_windows_amd64.zip -DestinationPath . -
Добавьте путь к директории с исполняемым файлом в
PATH:[System.Environment]::SetEnvironmentVariable("PATH", "$env:PATH;$PWD", "User") -
Перезапустите PowerShell.
-
Перейдите в директорию, в которую хотите скачать CLI:
cd <путь_к_директории> -
Скачайте и распакуйте файл yc_windows_386.zip
:curl.exe -O https://storage.yandexcloud.net/yandexcloud-yc/release/yc_windows_386.zip Expand-Archive yc_windows_386.zip -DestinationPath . -
Добавьте путь к директории с исполняемым файлом в
PATH:[System.Environment]::SetEnvironmentVariable("PATH", "$env:PATH;$PWD", "User") -
Перезапустите PowerShell.
Для дальнейшей работы с CLI создайте профиль.