Что такое Терминал Windows?
Терминал Windows — это современное ведущее приложение для предпочитаемых вами оболочек командной строки, таких как Командная строка, PowerShell и Bash (через подсистему Windows для Linux (WSL)). К его основным функциям относится поддержка нескольких вкладок, панелей, символов Юникода и UTF-8, а также модуль отрисовки текста с ускорением GPU, возможность создания собственных тем и настройки текста, цвета, фона и сочетаний клавиш.
Более общие сведения см. в статье Скотта Хансельмана (Scott Hanselman) Разница между консолью, терминалом и оболочкой или просмотрите видео Рича Тернера (Rich Turner) Что собой представляет оболочка командной строки?.
Несколько профилей, поддерживающих различные приложения командной строки
Любое приложение с интерфейсом командной строки можно выполнять в Терминале Windows. Это касается всех приложений: от PowerShell и Командной строки до Azure Cloud Shell и любого дистрибутива WSL, например Ubuntu или Oh-My-Zsh.
Разрыв табуляции (предварительная версия)
Вы можете вырвать вкладки в Терминал Windows и создать новые окна.
Вы также можете перетаскивать вкладки в существующие окна.
Настраиваемые схемы и конфигурации
В Терминале Windows можно настроить различные цветовые схемы и параметры. Сведения о настройке запроса с помощью холодных тем см. в руководстве по настройке пользовательского запроса PowerShell или WSL с помощью O My Posh , чтобы узнать, как создать собственную цветовую схему, перейдите на страницу «Цветовые схемы».
Настраиваемые действия
Существует множество пользовательских команд, которые можно использовать в Терминале Windows для удобства работы. Если вам не нравится конкретное сочетание клавиш, вы можете изменить его на любое другое.
Например, ярлык по умолчанию для копирования текста из командной строки — CTRL+SHIFT+C . Это можно изменить на CTRL+1 или любое, что вы предпочитаете. Чтобы открыть новую вкладку, по умолчанию используется сочетание клавиш CTRL+SHIFT+T , но может потребоваться изменить его на CTRL+2 . Сочетание клавиш по умолчанию для перевернутого между открытыми вкладками — CTRL+TAB , это может быть изменено на CTRL+- и используется для создания новой вкладки.
Дополнительные сведения о настройке сочетаний клавиш см. на странице «Действия».
Поддержка символов Юникода и UTF-8
В Терминале Windows могут отображаться символы Юникода и UTF-8, например эмодзи и символы из различных языков.
Отрисовка текста с ускоренным GPU
Терминал Windows использует GPU для отрисовки текста, что обеспечивает повышенную производительность по сравнению с использованием интерфейса командной строки Windows по умолчанию.
Поддержка фоновых изображений
В окне Терминала Windows можно использовать фоновые изображения и изображения в формате GIF. Сведения о добавлении фоновых изображений в профиль см. на странице Профиль — внешний вид.
Command line arguments
Вы можете настроить запуск Терминала Windows в определенной конфигурации с помощью аргументов командной строки. Вы можете указать, какой профиль следует открыть на новой вкладке и какой каталог папки следует выбрать. Кроме того, терминал можно открыть с разделенными панелями и выбрать основную вкладку.
Например, чтобы открыть Терминал Windows из PowerShell с тремя панелями (на левой панели будет запущен профиль Командной строки, а правая панель будет разделена для PowerShell и ваш профиль по умолчанию с WSL), введите:
wt -p "Command Prompt" `; split-pane -p "Windows PowerShell" `; split-pane -H wsl.exe
Сведения о настройке аргументов командной строки см. на этой странице.
Совместная работа с нами на GitHub
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.
Windows Terminal – приложение Windows 10 для одновременной работы с PowerShell, CMD, WSL.
Летом 2019 в магазине Windows (Microsoft Store) был представлен бесплатный инструмент командной строки под названием Windows Terminal (Терминал Windows). Пока он распространяется в виде предварительной версии (Preview).
Терминал Windows является приложением, предназначенным для создания удобной среды пользователям, использующим оболочку PowerShell, командную строку (CMD) и подсистему Windows для Linux (Windows Subsystem for Linux — WSL). Он является усовершенствованным терминалом, который отличается от терминалов предыдущего поколения следующими особенностями:
— поддерживает вкладки, можно одновременно работать с несколькими консольными приложениями.
— использует улучшенные шрифты и рендеринг текста, выполняемый с помощью графического процессора.
— поддерживает темы и настройки, позволяя пользователям персонализировать свой терминал.
— обеспечивает использование комбинаций клавиш, которые можно настроить под свои предпочтения.
По внешнему виду и своим возможностям Windows Terminal очень похож на терминалы операционных систем семейства Linux. Очевидно, что в ближайшее время он станет штатным программным средством, входящим в базовый набор утилит Windows 10 и последующих ОС от Microsoft.
Windows Terminal — это приложение Univeral Windows Platform (UWP), и как все подобные приложения располагается в каталоге %LOCALAPPDATA%\Packages\имя пакета . Исполняемый файл терминала — wt.exe . Символьная ссылка на него присутствует в путях поиска исполняемых файлов, определяемых переменной PATH , поэтому, для запуска терминала можно использовать не только стандартное меню Windows 10, но и комбинацию клавиш Win+R и ввод wt .
После запуска терминала открывается окно с вкладкой Windows PowerShell . Для открытия дополнительных вкладок используются комбинации клавиш, по которым можно получить подсказку:
Комбинации клавиш для открытия вкладок:
Ctrl+Shift+2 — Командная строка CMD
Ctrl+Shift+3 — Azure Cloud Shell
Ctrl+Shift+4 — Kali-Linux, подсистема Windows для Linux (WSL)
Ctrl+Shift+5 — Ubuntu (WSL)
Последние две комбинации будут присутствовать только в том случае, если включена подсистема Windows для Linux (Windows Subsystem for Linux, WSL) и установлены дистрибутивы Kali-Linux и Ubuntu.
Настройки Windows Terminal можно редактировать, выбрав пункт меню Settings . Для данной версии просмотр и изменение настроек выполняется в приложении Блокнот (notepad.exe) путем редактирования файла profiles.json
Настройки Windows Terminal
Файл JSON (JavaScript Object Notation), является текстовым файлом, предназначенным для обмена данными с использованием синтаксиса языка JavaScript . Многие современные языки программирования имеют готовый программный код для создания и обработки данных в формате JSON. Формат очень простой и легко воспринимается человеком.
В качестве значений в JSON могут быть использованы:
Запись — это неупорядоченное множество пар ключ:значение , заключённое в фигурные скобки < >. Ключ описывается строкой, между ним и значением стоит символ : . Пары ключ-значение отделяются друг от друга запятыми . Пример:
«command» : «closePane»,
«keys» : «ctrl+shift+w»
>
В данном примере описан элемент настройки терминала Windows, определяющий комбинацию клавиш Ctrl+Shift+w для закрытия вкладки.
Массив — упорядоченное множество значений. Массив заключается в квадратные скобки [ ] . Значения разделяются запятыми. Массив может иметь одно значение или быть пустым, т.е. не содержать ни одного. В файле настроек комбинации клавиш определяются в качестве массивов. Пример:
Число — может быть целым или вещественным.
Литералы true (истина), false (ложь) и null (пусто).
Строка — множество символов юникода, заключённое в двойные кавычки (массив символов). Символы также могут быть указаны с использованием escape-последовательностей , начинающихся с обратной косой черты \ (поддерживаются варианты \’, \», \\, \/, \t, \n, \r, \f и \b), или записаны шестнадцатеричным кодом в кодировке Unicode в виде \uXXXX . Например, определение символов-разделителей в файле настроек Терминала Windows:
В самом начале файла profiles.json указываются глобальные настройки терминала:
«globals» :
«alwaysShowTabs» : true, — всегда показывать вкладки.
«copyOnSelect» : false, — копировать выделенный текст в буфер обмена.
«defaultProfile» : «», — при запуске терминала открывать вкладку с указанным глобальным уникальным идентификатором guid
«initialCols» : 120, — количество знаков в строке терминала.
«initialRows» : 30, — количеств строк в терминале.
«keybindings» : [ … ] — массив, задающий комбинации клавиш, используемые в терминале.
В качестве альтернативной настройки, можно например, изменить конфигурацию таким образом, чтобы при старте терминала открывалась вкладка с командной строкой Windows (CMD). В данном случае, нужно изменить значение guid PowerShell для ключа defaultProfile на значение guid из профиля для cmd . Профили также представлены массивом записей, определяющих настройки каждого из них:
«profiles» :
[
< профиль1 … профильN>
Каждый профиль содержит идентификатор guid и его название name , например, для профиля командной строки CMD:
Установив значение guid из профиля с именем cmd для ключа defaultProfile мы получим Windows Terminal, который при запуске будет открывать вкладку с командной строкой CMD Windows.
В настройках имеются несколько профилей, уже подготовленных разработчиками или автоматически созданными при установке дистрибутивов Linux подсистемы Windows для Linux (WSL):
«name» : «Windows PowerShell»
. . .
«name» : «cmd»,
. . .
«name» : «Azure Cloud Shell»,
. . .
«name» : «Ubuntu»,
Профили используют цветовые схемы, которые представлены массивом schemes :
«name» : «Campbell»,
. . .
. . .
«name» : «Solarized Light»,
Если в профиле с именем cmd изменить цветовую схему, например, указав
«colorScheme» : «Solarized Light»,
То мы получим вкладку приложения командной строки с новой цветовой схемой:
Таким же образом, редактируя файл profiles.json пользователь может изменить и отдельные параметры профиля или цветовой схемы – цвет курсора, шрифт, фоновый рисунок и т.п. Можно также создать свой собственный профиль, цветовую схему, сменить комбинации клавиш и т.п. При этом нужно учитывать, что guid является уникальным идентификатором в пределах конкретной системы, а также то, что изменения в настройках должны быть сделаны с учетом правил формирования содержимого файлов JSON
Настоятельно рекомендуется перед редактированием файла настроек profiles.json , сохранить его копию. В случае, если файл имеет синтаксические ошибки, его содержимое игнорируется и применяются настройки по умолчанию. Если файл удалить, то при последующем запуске терминала, он будет создан заново с исходными настройками.
Windows Terminal: Советы и хитрости
Windows Terminal это программное обеспечение, которое соединяет в себе командную строку, PowerShell и WSL (Windows Subsystem for Linux). На данный момент имеется две его версии, это основной Windows Terminal версии 1.3 и Предварительной сборки версии 1.4. Терминал можно полностью настроить индивидуально: изменять темы, цветовые стили, добавлять конфигурации и даже устанавливать фоновые изображения. Установить Windows Terminal можно из магазина Microsoft или по ссылке https://aka.ms/terminal.
По умолчанию, всегда открывается PowerShell. Также терминал устанавливается с преднастроенными профилями Windows PowerShell, командной строки и облачной оболочки Azure.
Если в будущем будет установлен дополнительный WSL, он также автоматически добавится и будет добавлена соответствующая иконка дистрибутива. При желании значок можно изменить в настройках.
Настройки
Windows Terminal имеет большое количество настроек, включая цветовые настройки и сочетания клавиш. Чтобы просмотреть настройки по умолчанию, нажмите Ctrl+, или выберите Параметры в меню окна. Файл настроек представляет собой текстовый файл settings.json.
Глобальные настройки профиля.
Общие настройки профиля.
WT имеет общие настройки, которые будет применяться к каждому профилю. Настройки нужно записать в раздел «defaults» внутри объекта «profiles». Список всех возможных настроек профиля можно найти в документации.
"profiles": < "defaults": < // Настройки, которые будут применяться для всех профилей "fontFace": "Cascadia Code" >, "list": [] >
Индивидуальная цветовая настройка
Индивидуальная цветовая настройка
Windows Terminal устанавливается со стандартным набором цветовой палитры, тем не менее ее можно изменять. Большое количество цветовых схем для терминала можно найти на сайте terminalsplash.com. С сайта можно сразу скопировать код цветовой настройки или перейти на github для получения подробной информации.
Настройка командной строки.
Изменить стиль командной строки можно с помощью Oh my Posh and Terminal-Icons. Эти инструменты позволяют кастомизировать внешний вид с помощью цветов, символов. Инструкция по установке Oh my Posh, Posh-Git и PSReadline находится в документации.
Недавно вышла версия Oh my Posh 3, имеющая большее количество настроек. Обновиться до крайней версии можно командой:
Update-Module -Name oh-my-posh -AllowPrerelease -Scope CurrentUser
С помощью Terminal-Icons можно добавлять значки.
Фоновые изображения
Для использования в качестве фона терминал Windows поддерживает как JPG, так и GIF изображения. Другой вариант — установка в качестве фона логотипа оболочки. Место размещения изображения указывается в настройках «backgroundImageAlignment«.
Функциональность.
Аргументы командной строки wt.exe
Запуск WT (Windows Terminal) можно производить с определенной конфигурацией, параметры, которые можно установить — это расположение вкладок, панелей, домашний каталог, профиль. Можно сохранить команду как ярлык и использовать его для быстрого запуска.
В этом примере PowerShell откроется на новой вкладке с вертикальной панелью.
wt -p "PowerShell" -d . ; split-pane -V
Этот пример откроет профиль Ubuntu-20.04
wt -p "Ubuntu-20.04"
Полная документация находится на официальном сайте.
Панели
Windows Terminal имеет панельную поддержку профилей. Новую панель можно открыть, нажав комбинации клавиш Ctrl+Shift+1, Ctrl+Shift+2 и т.д или выбрав из выпадающего списка нужный профиль.
- Разделить окно на две панели: Alt+Shift+D
- Разделить окно горизонтально: Alt+Shift+ знак —
- Разделить окно вертикально: Alt+Shift+ знак +
Перемещаться между панелями можно удерживая Alt и используя клавиши стрелок. А используя сочетание клавиш Alt+Shift и стрелки модно изменять размер панелей.
Копировать/вставить
В Терминале Windows по умолчанию для копирования и вставки используются сочетания клавиш Ctrl + C и Ctrl + V. Если у вас нет выделения, Ctrl + C будет действовать, как обычно, как команда break.
Вызов команды Копировать/Вставить можно перенастроить на другие сочетания клавиш. Они хранятся в файле конфигурации settings.json. Если удавить эту связку, то по умолчанию будет использовать Ctrl + Shift + C и Ctrl + Shift + V.
Стартовый каталог WSL
Сейчас Windows Terminal по умолчанию устанавливает начальный каталог WSL в качестве папки профилей пользователей Windows (C:usersUserName). Чтобы перенастроить WSL-профиль на запуск в нужную папку, нужно выполнить в оболочке WSL команду nano ~/.bashrc и добавить в конце файла путь к каталогу, например, cd /mnt/c/mylovefolder, и после очередного запуска будет он будет изменен.
Windows Terminal — новая оболочка, постоянно обновляющаяся, поддерживающая вкладки и объединяющая в себе несколько сред (Cmd, WSL, PowerShell, Azure Cloud Shell) благодаря чему упрощается управление инфраструктурой.
Новый Windows Terminal: ответы на ваши вопросы
В комментариях к недавней статье вы задали много вопросов по поводу новой версии нашего Windows Terminal. Сегодня постараемся ответить на некоторые из них.
Под катом приведены некоторые из наиболее часто задаваемых вопросов, которые мы слышали (и до сих пор слышим), а также официальные ответы: в том числе о замене PowerShell и о том, как начать пользоваться новинкой уже сегодня.
Когда и где я могу получить новый Windows Terminal?
- Вы можете клонировать исходный код терминала из GitHub по адресу github.com/microsoft/terminal и собрать его на своем компьютере.
Примечание: обязательно прочитайте и следуйте инструкциям на странице README в репозитории, прежде чем попытаетесь собрать проект — для сборки проекта необходимо выполнить некоторые предварительные условия и шаги инициализации! - Preview-версия терминала будет доступна для загрузки из Microsoft Store летом 2019 года.
Windows Terminal — это замена Command Prompt и/или PowerShell?
Чтобы ответить на этот вопрос, давайте проясним несколько терминов и понятий:
- Command Prompt и PowerShell (например, WSL/bash/т. д. в *NIX) являются оболочками, а не терминалами и не имеют собственного UI
- При запуске оболочки/приложения/средства командной строки Windows автоматически запускает и подключает их к экземплярам Windows Console (при необходимости)
- Windows Console — это стандартное “terminal-like” UI-приложение, которое поставляется в Windows и которое пользователи использовали в течение последних 30 лет при запуске средств командной строки в Windows NT, 2000, XP, Vista, 7, 8 и 10
Таким образом, вопрос, скорее всего, следует переформулировать как “Windows Terminal — это замена Windows Console?”
- Windows Console будет продолжать поставляться в Windows в течение десятилетий, чтобы обеспечить обратную совместимость со многими миллионами существующих/устаревших сценариев, приложений и средств командной строки
- Windows Terminal будет работать вместе с Windows Console, но, скорее всего, станет предпочтительным инструментом для пользователей, желающих запускать средства командной строки в Windows
- Windows Terminal может подключаться к Command Prompt и PowerShell, а также к любой другой оболочке/средству/приложению командной строки. Вы сможете открывать независимые вкладки, подключенные к Command Prompt, PowerShell, bash (через WSL или ssh) и любым другим оболочкам/средствам на ваш выбор
Когда я смогу получить новый шрифт?
Скоро! У нас нет установленного таймлайна, но мы активно работаем над завершением шрифта. Как только он будет готов к выпуску, он будет открыт и доступен в своем репозитории.
Как это было на Build
Если вы пропустили наше выступление на Build 2019, то вот некоторые из основных моментов, которые помогут вам избавиться еще от нескольких вопросов:
Terminal Keynote и Aspirational Video
Во время выступления Раджеша Джа (Rajesh Jha) Кевин Галло (Kevin Gallo) анонсировал новый терминал и продемонстрировал наше новое “Terminal Sizzle Video”, иллюстрирующее желаемое направление для v1.0:
Сессия в Windows Terminal
Рич Тернер (Rich Turner) [Senior Program Manager] и Майкл Никса (Michael Niksa) [Senior Software Engineer] провели углубленную сессию в Windows Terminal, его архитектуре и коде.
Заключение
Обязательно следите за обновлениями на страницах @cinnamon_msft и @richturn_ms в Twitter и в течение ближайших недель и месяцев почаще посещайте наш блог, посвященный командной строке, чтобы узнать больше о терминале и нашем прогрессе в направлении v1.0.
Если вы разработчик и хотели бы принять участие, пожалуйста, посетите репозиторий терминала на GitHub и рассмотрите и обсудите проблемы с командой и сообществом, и если у вас есть время, внесите свой вклад, отправив PR, содержащий исправления и улучшения, чтобы помочь нам сделать терминал потрясающим!
Если вы не являетесь разработчиком, но все равно хотели бы опробовать терминал, загрузите его из Microsoft Store после его публикации этим летом и обязательно отправьте нам фидбэк о том, что вам нравится, что не нравится и т. д.
- microsoft
- windows terminal
- Блог компании Microsoft
- PowerShell
- Разработка под Windows