Як додати кілька терміналів у VS Code?


86

Чи можемо ми додати кілька різних терміналів у VS Code? Я планую додати наступні три термінали і працювати з усіма з них:

  1. Командний рядок Windows
  2. PowerShell
  3. Git Bash

Я знаю, що мені потрібно додати таку команду в Preferences => Setting

 // // 64-bit cmd if available, otherwise 32-bit
 "terminal.integrated.shell.windows": "C:\\Windows\\sysnative\\cmd.exe",
// // 64-bit PowerShell if available, otherwise 32-bit
 "terminal.integrated.shell.windows": "C:\\Windows\\sysnative\\WindowsPowerShell\\v1.0\\powershell.exe",
// // Git Bash
 "terminal.integrated.shell.windows": "C:\\Program Files\\Git\\bin\\bash.exe",

Я хочу додати всі вищезазначені три команди в setting.json

введіть тут опис зображення

І коли я натискаю, +повинен відкритись інший термінал, і я хочу працювати з цими терміналами, не змінюючи налаштувань. Це можливо у VS Code чи ні?


1
Якщо ви введете це в термінал PowerShell, він запустить git bash:& "c:\Program Files\git\bin\bash.exe"
Давос


2
Що стосується code.visualstudio.com/updates/v1_35, то тепер ви можете зробити це простіше, див. Мою відповідь внизу сторінки. Я закінчив тут через Google, встановив розширення, потім прочитав до кінця, помітив коментар Ніла, потім перейшов до примітки до випуску за травень 2019 року і додав його сюди як fyi
edelwater

Відповіді:


109

Існує спосіб зробити це за допомогою цих кроків, встановивши розширення:

  1. Знайдіть розширення з назвою Shell launcherта встановіть його, або ви можете знайти тут . Перезавантажте код VS, якщо хочете, або після того, як закінчите всі кроки.

  2. Перейдіть до, Files --> Preferences --> Settingsі це відкриє settings.jsonфайл, а потім вставте це (ви можете відредагувати це до душі):

Код:

"shellLauncher.shells.windows": [
    {
        "shell": "C:\\Windows\\<sysnative>\\cmd.exe",
        "label": "cmd"
    },
    {
        "shell": "C:\\Windows\\<sysnative>\\WindowsPowerShell\\v1.0\\powershell.exe",
        "label": "PowerShell"
    },
    {
        "shell": "C:\\Program Files\\Git\\bin\\bash.exe",
        "label": "Git bash"
    },
    {
        "shell": "C:\\Windows\\<sysnative>\\bash.exe",
        "label": "WSL Bash"
    }
]

PS: Ви можете використовувати shellLauncher.shells.linuxдля Linuxабо shellLauncher.shells.osxдля macOS.

  1. Перейдіть до, Files --> Preferences --> Keyboard Shortcutsа потім знайдіть на {}піктограмі у верхньому правому куті, щоб відкрити keybindings.jsonфайл. Вставте це:

Код:

[
    { "key": "ctrl+alt+`", "command": "shellLauncher.launch" }
]

Оновлення : введіть shelllauncherу рядок пошуку. Потім ви можете побачити Shell Launcher: Launchкоманду. Виділіть і використовуйте будь-яку вподобану клавіатуру. Наприклад, я вибрав для себе Ctrl + Alt + (backtick) `.

Ви можете перезавантажити код VS і натиснути призначену комбінацію клавіш, що дасть вам можливість вибрати, який інтегрований термінал ви хочете використовувати.

введіть тут опис зображення

Для отримання детальної інформації перегляньте офіційний сайт: https://marketplace.visualstudio.com/items?itemName=Tyriar.shell-launcher

Насолоджуйтесь!


8
це не працює. Я хочу додати кілька terminal.integrated.shell.windowsнеShell launcher
MANISH KUMAR CHOUDHARY

2
Я не думаю, що цього можна зробити зараз, але, можливо, у майбутньому, як зазначив Бен. Це просто робота, щоб мати кілька терміналів, встановивши розширення з деякими налаштуваннями, щоб ви могли одночасно відкрити cmd, PowerShell або Bash.
ian0411

2
Людина, це справді круте розширення, і насправді це дійсно те, що мені потрібно, тому що іноді мені потрібен bash і кілька PS. Чудово!
Raffaeu

2
Чудово працює! Додана оболонка для Cmder за допомогою цього методу.
AspiringDevOpsGuru

5
Для тих, хто налаштує копіювання / вставлення. Якщо ви перебуваєте на машині Windows у своїх шляхах, замініть sysnativeнаSystem32
Ендрю

66

Навіть питання задано минулого року, і відповідь прийнято, але все одно я відчуваю відповідь на це запитання, оскільки я не знайшов жодної простої, придатної та повної відповіді, тоді як у якості розробки мені потрібен декілька зручних терміналів одним натисканням, як показано нижче: -

введіть тут опис зображення

і я не турбуюся про їх шлях, додайте ще одне розширення для того, на що вже здатний код VS, або перезавантажте VS Shell тощо, і перейдіть до вставки та налаштування файлів налаштувань вручну.

Я виявив, що це запитання задають багато разів, і майже всі потрапляють вручну, налаштовуючи запис деяких налаштувань тощо, або іноді вибирають лише один термінал. Відповідь @Pawan дещо близька, але знову ж таки це рішення, нарешті, потрапляє до одного терміналу, переходячи до налаштування команди для терміналу комутатора, і цей буде працювати для git або будь-якого іншого терміналу.

Якщо у вас встановлені інструменти, які працювали в командному рядку, такі як power-shell та git, а також командний рядок за замовчуванням у Windows, виконайте три швидкі кроки, щоб отримати всі термінали одночасно та перейти до будь-кого, хто натиснув.

  1. Відкрийте термінал, він повинен бути видимим (використовуйте ctrl + ` або з меню Перегляд-> Інтегрований термінал )

  2. Відкрийте пошук команд (використовуйте Ctrl + Shift + P або з меню Перегляд-> Палітра команд ... )

  3. У командному полі введіть " Terminal: Select Shell Default ", щоб вибрати цю опцію зі спадного меню. введіть тут опис зображення
  4. Коли ви вибираєте цей параметр, тоді всі доступні команди, що знаходяться в шляху, будуть перелічені нижче, як показано нижче введіть тут опис зображення

  5. Просто натисніть будь-який, який ви хочете додати, для швидкого доступу зі списку команд.

  6. Нарешті, у вікні терміналу просто натисніть на знак + біля списку терміналів, як показано нижче: - введіть тут опис зображення

Термінал, обраний на кроці 5, тепер буде доданий після виконання кроку 6 до списку без видалення попереднього терміналу.

  1. Повторіть крок 3-6 для додавання будь-якого іншого терміналу до списку команд.

Для роботи з певним терміналом просто виберіть потрібний у списку терміналів у вікні терміналу.


1
Це відповідь, яку я шукав, хоча випадково виявив її. :)
Легенда

20
Цей підхід буде перезаписувати термінал за замовчуванням кожного разу, коли буде додано нове представлення. Якщо код Visual Studio використовується для інших цілей, де термінал за замовчуванням повинен залишатися незмінним, це не кращий підхід.
Фабіо

1
Дякую ... саме те, що я шукав.
Тікі

3
Чи є спосіб, як налаштувати параметри? Схоже, налаштування зникає після закриття браузера.
Мавпа

2
Дякую. Мені подобаються рідні рішення.
Greeso

23

натисніть ctrl + shift + `ярлик або натисніть хрестик, щоб запустити новий термінал, а потім введіть, bashякщо ваш режим за замовчуванням є PowerShell або powershellякщо ваш режим за замовчуванням є bash. І ось ви, ваш термінал переключено.


1
Це працює добре, але воно не переноситься між сесіями VSCode, оскільки не вносить жодних змін у налаштування. Особисто мені це подобається, оскільки це лише кілька натискань на клавіші, і мені не завжди потрібні кілька типів терміналів.
torpy

5
Наразі це найкраще рішення
Пакк

6

Наразі підтримка коду VS визначає лише один із доступних терміналів за замовчуванням одночасно, і ви не можете додавати кілька терміналів оболонки.

Якщо ви не хочете встановлювати плагін "Shell Launcher", як запропонував @ ian0411, то ось швидкий спосіб змінити / вибрати термінал за замовчуванням.

Натисніть "Ctrl + Shift + P", щоб відкрити палітру команд.

Введіть "Terminal: Select Shell Default" і натисніть Enter. Вам буде запропоновано вибрати Git Bash, PowerShell або Cmd, як показано нижче:

Можливість зміни бажаної оболонки терміналу

Примітка: Це призведе до зміни терміналу оболонки за замовчуванням, але немає шкоди, якщо його потрібно буде використовувати інший.

До речі, якщо вам потрібно переключитися лише між Cmd і Powershell, тоді ви можете ввести cmd або PowerShell (у вже відкритому терміналі), щоб перейти на потрібний термінал. Але це не спрацювало б для Git Bash.


4

Я не бачу цього у вищезазначеному, але прочитайте всі відповіді. Я думаю, що це найкращий підхід для того, що зараз підтримується. Я вважаю, як і я, операційна система просто хоче відкрити VSCode, а там, у вікні терміналу, ми просто хочемо відкрити список опцій.

Так, ви можете відкрити команду "Термінал: Виберіть оболонку за замовчуванням" і прокрутити її, щоб додати різні типи терміналів ...

Так, ви можете відкрити команду "Термінал: Виберіть оболонку за замовчуванням" і прокрутити її, щоб додати різні типи терміналів ... Далі: введіть тут опис зображення

Я не знаю, коли цю опцію було додано до випадаючого меню, але подивіться! Не потрібно починати з пошуку команди. Я думаю, що це набагато плавніше, ніж будь-яка інша відповідь, але все одно це призводить до прикрого перезапису вашого терміну за замовчуванням до того, яким був ваш останній вибір перед виходом із сесії.

Тут ми можемо легше відкрити Select Shell Shell - вона повинна підтримувати "Select New Shell" . Просто, можна подумати. Сподіваємось, хтось додає, що незабаром або я встигну внести свій внесок.

Тут ми можемо легше відкрити "Вибрати оболонку за замовчуванням" - вона повинна підтримувати "Вибрати нову оболонку"


3

Це можна зробити, додавши в кінці інший ключ. Просто змінивши приклад на:

// // 64-bit cmd if available, otherwise 32-bit
 "terminal.integrated.shell.windows": "C:\\Windows\\sysnative\\cmd.exe",
// // 64-bit PowerShell if available, otherwise 32-bit
 "terminal.integrated.shell.windows2": "C:\\Windows\\sysnative\\WindowsPowerShell\\v1.0\\powershell.exe",
// // Git Bash
 "terminal.integrated.shell.windows3": "C:\\Program Files\\Git\\bin\\bash.exe",

Зверніть увагу, що ключ ... shell.windows змінено на ... shell.windows2 та ... shell.windows3 .

Подальші висновки: Я помітив, що після перезапуску IDE відображається лише перший термінал. Мені довелося знову відкрити налаштування та зберегти його один раз, щоб знову отримати обидва термінали. Буде розміщено, якщо доступне якесь краще рішення.


5
Я додав ці налаштування до UserSetting, але на 2-й та 3-й оболонках є попередження, повідомлення попередження - "Невідоме налаштування конфігурації"
Emad Armoun



0

Для WSL Ubuntu на терміналі Windows:

Файл -> налаштування -> налаштування -> клацніть піктограму коду у верхньому правому куті

Введіть наступні:

{
    "terminal.integrated.shell.windows": "C:\\WINDOWS\\System32\\wsl.exe",
    "git.enableSmartCommit": true
}

0

Щоб відкрити multipleтермінал, перевірте знімок екрана на те саме (у нижній частині коду візуальної студії їх буде випадаючим списком, а відразу після нього піктограма + (плюс). При натисканні відкриється новий термінал.) .


0

Станом на https://code.visualstudio.com/updates/v1_35 тепер ви можете:

  1. виберіть зі спадного меню безпосередньо над терміналом "Вибрати оболонку за замовчуванням"
  2. виберіть той, який вам сподобався
  3. натисніть +
  4. зроблено

(те саме стосується відкриття розділеного екрану: перед цим зробіть 1 + 2, а потім натисніть кнопку розділеного екрана)

(хоча і замінює за замовчуванням, але більше не має значення, чи це ваш потік)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.