{"meta":{"title":"Изменение оболочки в пространстве кода","intro":"Вы можете изменить оболочку в пространстве кода, чтобы сохранить настройку, которую вы используете.","product":"Codespaces","breadcrumbs":[{"href":"/ru/enterprise-cloud@latest/codespaces","title":"Codespaces"},{"href":"/ru/enterprise-cloud@latest/codespaces/customizing-your-codespace","title":"Настройка codespace"},{"href":"/ru/enterprise-cloud@latest/codespaces/customizing-your-codespace/changing-the-shell-in-a-codespace","title":"Изменение оболочки"}],"documentType":"article"},"body":"# Изменение оболочки в пространстве кода\n\nВы можете изменить оболочку в пространстве кода, чтобы сохранить настройку, которую вы используете.\n\nПри работе в пространстве кода можно открыть новое окно терминала с выбранным оболочкой, изменить оболочку по умолчанию для новых окон терминала или установить новую оболочку. Вы также можете использовать dotfiles для настройки оболочки.\n\nПространства кода, использующие образ контейнера разработки по умолчанию, приходят с `bash``zsh`установленными оболочками и `fish` оболочками. Если открыть новое пространство кода в веб-клиенте VS Code или подключиться к пространству кода через SSH, терминал откроется с сеансом `bash` , запущенным по умолчанию. В классическом приложении VS Code оболочка по умолчанию зависит от локальных параметров и операционной системы. Дополнительные сведения см. в разделе [\"Профили](https://code.visualstudio.com/docs/terminal/profiles) терминала\" в документации по VS Code.\n\n## Переход с оболочки по умолчанию в VS Code\n\nЕсли вы не хотите использовать оболочку по умолчанию, можно открыть новый сеанс терминала с другой оболочкой.\n\n1. Если встроенный терминал не отображается в VS Code, нажмите клавиши <kbd>CTRL</kbd>+\\`.\n\n2. Справа от значка <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-plus\" aria-label=\"plus\" role=\"img\"><path d=\"M7.75 2a.75.75 0 0 1 .75.75V7h4.25a.75.75 0 0 1 0 1.5H8.5v4.25a.75.75 0 0 1-1.5 0V8.5H2.75a.75.75 0 0 1 0-1.5H7V2.75A.75.75 0 0 1 7.75 2Z\"></path></svg> для открытия нового окна терминала выберите значок раскрывающегося списка.\n\n   ![Снимок экрана: интегрированный терминал в VS Code. Рядом со значком плюса стрелка вниз очертается оранжевым цветом.](/assets/images/help/codespaces/new-shell-session.png)\n\n3. В раскрывающемся меню выберите имя оболочки, которую вы хотите использовать.\n\n## Установка новой оболочки\n\nЕсли вы хотите использовать оболочку, которая еще не установлена в базовом образе или конфигурации контейнера разработки для пространства кода, можно установить новую оболочку.\n\nЕсли вы используете образ контейнера разработки по умолчанию, найдите инструкции по установке для Ubuntu Linux. Если вы просто хотите использовать другую оболочку для одного сеанса, можно использовать командную строку для установки оболочки в пространстве кода, в который вы работаете. Однако вы можете потерять установленные программы при перестроении контейнера в пространстве кода. Дополнительные сведения см. в разделе [Подробные сведения о GitHub Codespaces](/ru/enterprise-cloud@latest/codespaces/about-codespaces/deep-dive#about-the-directory-structure-of-a-codespace).\n\nБолее надежный вариант установки новых оболочков заключается в том, чтобы включить команды установки либо в репозиторий dotfiles, либо в качестве команды жизненного цикла, например `postCreateCommand` в `devcontainer.json` файле. Необходимо использовать репозиторий dotfiles для установки оболочки, которую вы хотите использовать во всех собственных пространствах кода, и `devcontainer.json` файл оболочки, которая участники определенного репозитория должна быть установлена. Дополнительные сведения см. в разделе \\[AUTOTITLE и [Персонализация GitHub Codespaces для вашего аккаунта](/ru/enterprise-cloud@latest/codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account#dotfiles)]\\(/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers).\n\n### Добавление профиля терминала VS Code для новой оболочки\n\nVS Code автоматически обнаруживает большинство стандартных оболочк и добавляет их в качестве профиля терминала, чтобы можно было легко открывать новые окна терминала с помощью установленной оболочки.\n\nЕсли установленная оболочка не обнаружена автоматически, можно добавить новый профиль терминала в параметры пользователя. Этот параметр зависит от операционной системы, поэтому следует использовать `linux` для веб-клиента VS Code и локальной операционной системы для классического приложения.\n\n1. Чтобы открыть Visual Studio Code Command Palette, нажмите клавиши <kbd>COMMAND</kbd>+<kbd>SHIFT</kbd>+<kbd>P</kbd> (Mac) или <kbd>CTRL<kbd></kbd>+SHIFT+</kbd><kbd>P</kbd> (Windows).\n\n2. Начните вводить \"Параметры пользователя\", а затем нажмите кнопку **\"Параметры пользователя\" (JSON).**\n\n3. `settings.json` В файле в объекте JSON добавьте новое свойство, как показано ниже. Замените `OPERATING-SYSTEM` соответствующей операционной системой (например `linux`, `windows`или `osx`) и `SHELL` установленной оболочкой.\n\n   ```json copy\n   \"terminal.integrated.profiles.OPERATING-SYSTEM\": {\n     \"SHELL\": {\n       \"path\": \"SHELL\"\n     }\n   }\n   ```\n\n   Например:\n\n   ```json\n   \"terminal.integrated.profiles.linux\": {\n    \"csh\": {\n      \"path\": \"csh\"\n    }\n   }\n   ```\n\n4. Сохраните файл.\n\nСинхронизация параметров можно использовать для совместного использования этих параметров во всех пространствах кода, открытых в веб-клиенте и классическом приложении VS Code. Если вы работаете в веб-клиенте, синхронизация параметров отключена по умолчанию, и необходимо включить синхронизацию параметров для отправки изменений в параметры или извлечения новых изменений, внесенных в другое место. Дополнительные сведения см. в разделе [Персонализация GitHub Codespaces для вашего аккаунта](/ru/enterprise-cloud@latest/codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account#settings-sync).\n\n## Установка оболочки по умолчанию в VS Code\n\nВы можете задать профиль терминала по умолчанию, чтобы выбрать оболочку по умолчанию, используемую для всех новых окон терминала, открытых в VS Code. Профиль терминала по умолчанию зависит от операционной системы, поэтому можно задать профиль по умолчанию для Linux, если используется веб-клиент VS Code или для локальной операционной системы, если вы используете классическое приложение.\n\n> \\[!NOTE]\n> Независимо от профиля по умолчанию пространства кода, открытые в веб-клиенте, всегда открываются с сеансом, запущенным `bash` изначально.\n\n1. Чтобы открыть Visual Studio Code Command Palette, нажмите клавиши <kbd>COMMAND</kbd>+<kbd>SHIFT</kbd>+<kbd>P</kbd> (Mac) или <kbd>CTRL<kbd></kbd>+SHIFT+</kbd><kbd>P</kbd> (Windows).\n\n2. Начните вводить \"Параметры пользователя\", а затем нажмите кнопку **\"Параметры пользователя\" (JSON).**\n\n3. В объекте JSON установите оболочку по умолчанию для соответствующей операционной системы, добавьте строки или измените существующие строки, как показано ниже.\n\n   ```json\n   \"terminal.integrated.defaultProfile.OPERATING-SYSTEM\": \"SHELL\"\n   ```\n\n   Например:\n\n   ```json copy\n   {\n      \"terminal.integrated.defaultProfile.osx\": \"zsh\",\n      \"terminal.integrated.defaultProfile.linux\": \"bash\",\n      \"terminal.integrated.defaultProfile.windows\": \"PowerShell\"\n   }\n   ```\n\n4. Сохраните файл `settings.json`.\n\nСинхронизация параметров можно использовать для совместного использования этих параметров во всех пространствах кода, открытых в веб-клиенте и классическом приложении VS Code. Если вы работаете в веб-клиенте, синхронизация параметров отключена по умолчанию, и необходимо включить синхронизацию параметров для отправки изменений в параметры или извлечения новых изменений, внесенных в другое место. Дополнительные сведения см. в разделе [Персонализация GitHub Codespaces для вашего аккаунта](/ru/enterprise-cloud@latest/codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account#settings-sync).\n\n## Настройка оболочки по умолчанию по протоколу SSH\n\nПри подключении к пространству кода из командной строки по протоколу SSH вы подключаетесь к `bash` сеансу в пространстве кода по умолчанию.\n\nЕсли вы включили репозиторий dotfiles для GitHub Codespaces, можно изменить оболочку по умолчанию, к которой вы подключаетесь, добавив команду в скрипт установки, например `install.sh` в dotfiles. Дополнительные сведения см. в разделе \\[AUTOTITLE и [Использование кодовых пространств GitHub с GitHub CLI](/ru/enterprise-cloud@latest/codespaces/developing-in-a-codespace/using-github-codespaces-with-github-cli#ssh-into-a-codespace)]\\(/codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account#dotfiles). Например, следующая команда изменяет оболочку `zsh`по умолчанию на .\n\n```shell copy\nsudo chsh \"$(id -un)\" --shell \"/usr/bin/zsh\"\n```\n\nЕсли вы хотите использовать оболочку по умолчанию, которая не установлена в пространстве кода по умолчанию, или убедитесь, что у вас установлена последняя версия оболочки, сначала можно установить оболочку.\n\n```shell copy\nsudo apt-get update -y\nsudo apt-get install -y csh\nsudo chsh \"$(id -un)\" --shell \"/usr/bin/csh\"\n```\n\n> \\[!NOTE]\n> Если вы создаете новое пространство кода (например, с помощью `gh codespace create`), необходимо ждать достаточно времени, чтобы убедиться, что скрипт завершен до подключения к пространству кода по протоколу SSH. Если скрипт не завершил работу, подключитесь к сеансу по умолчанию `bash` .\n\nПри подключении к пространству кода для большинства оболочк можно использовать команду `readlink /proc/$$/exe` для проверки правильной оболочки.\n\n## Настройка оболочки\n\nВ большинстве оболочки вы можете использовать файл конфигурации, например `.bashrc`настроить оболочку с предпочитаемыми параметрами. Эти параметры могут включать такие элементы, как псевдонимы и переменные среды.\n\nПо умолчанию пространства кода содержат предопределенную конфигурацию для оболочк, которые будут предварительно установлены. Например, домашний каталог в пространстве кода содержит `.bashrc` и `.zshrc` файлы. Вы можете изменить содержимое этих файлов, а затем использовать команду, как `source ~/.bashrc` обновить конфигурацию оболочки. Однако при перестроении контейнера в пространстве кода вы потеряете любые изменения в этих файлах. Дополнительные сведения см. в разделе [Подробные сведения о GitHub Codespaces](/ru/enterprise-cloud@latest/codespaces/about-codespaces/deep-dive#about-the-directory-structure-of-a-codespace).\n\nКак правило, следует использовать репозиторий dotfiles для настройки оболочки с предпочитаемыми параметрами. Настройка в dotfiles применяется ко всем создаваемым пространствам кода и сохраняется над перестроениями контейнера. Дополнительные сведения см. в разделе [Персонализация GitHub Codespaces для вашего аккаунта](/ru/enterprise-cloud@latest/codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account#dotfiles).\n\n### Устранение неполадок оболочки `fish`\n\nОболочка `fish` включает веб-интерфейс конфигурации. С помощью `fish_config` команды можно запустить локальный веб-сервер и запустить этот интерфейс, а затем выполнить такие действия, как изменение запроса терминала или просмотр переменных среды.\n\nВ пространстве кода можно использовать веб-интерфейс `fish` . Однако параметры цвета в интегрированном терминале данных VS Codeзависят от выбранной темы VS Code и невозможно переопределить эти параметры, задав новую тему в интерфейсе `fish_config` .\n\nПри `fish` запуске локального сервера ссылка по умолчанию на GitHub Codespaces не работает. Например, если щелкнуть **\"Открыть в браузере** \" во всплывающем сообщении, вы перейдете на страницу ошибок.\n\nДоступ к веб-интерфейсу для `fish_config`:\n\n1. В терминале под управлением сеанса `fish` введите `fish_config`.\n\n2. В выходных данных терминала нажмите <kbd>клавиши COMMAND</kbd>+CLICK или <kbd>CTRL</kbd>+CLICK, чтобы открыть ссылку на `web_config` HTML-файл.\n\n   ```shell\n   $ fish_config\n   Web config started at file:///tmp/web_config60rc9tr3.html\n   Hit ENTER to stop.\n   ```\n\n3. `web_config` В файле нажмите <kbd>клавиши Command</kbd>+click или <kbd>CTRL</kbd>+click, чтобы открыть ссылку на переадресованный порт.\n\n   ```html\n   <body>\n     <p><a href=\"http://localhost:8000/1b9411c2469e392b96df5e5b28da485b/\">Start the Fish Web config</a></p>\n   </body>\n   ```\n\n## Дополнительные материалы\n\n* [Настройка параметров пользователя](/ru/enterprise-cloud@latest/codespaces/setting-your-user-preferences)\n* [Управление кодовыми пространствами](/ru/enterprise-cloud@latest/codespaces/managing-your-codespaces)"}