Visual Studio Code 終端機使用和設定說明
訂閱 375
Visual Studio Code 終端機
在實際的專案開發中,IDE 通常會使用命令列(也被稱為殼層程式,shell)來編譯和執行程式碼,或完成其他的相關工作。終端機使開發人員可以在 Visual Studio Code 中直接使用命令列,比如 Windows 中的 PowerShell 和命令提示字元,UNIX/Linux 中的bash
。
預設情況下,終端機面板會顯示在 Visual Studio Code 的底端區域,該面板的右上角將提供與終端機相關的實用功能和資訊。如果終端機啟動了多個命令列應用,那麽終端機面板的右邊區域會一一列出他們,同時介面會發生一些變化。
開啟 Visual Studio Code 終端機
要在 Visual Studio Code 中開啟終端機,你可以選擇功能表項檢視 | 終端,或者使用鍵盤快速鍵Ctrl+`(macOS 中為⌃+`),或者在命令選擇區中輸入並執行命令View: Toggle Terminal
。如果終端機已經被開啟,那麽使用鍵盤快速鍵Ctrl+`或執行命令View: Toggle Terminal
將隱藏終端機。
如何開啟新的外部終端機?
除了可以開啟整合的終端機,Visual Studio Code 也可以直接開啟外部終端機,只需要使用鍵盤快速鍵Ctrl+Shift+C,或在命令選擇區中輸入並執行命令Open New External Terminal
,或選擇檔案總管中的資料夾的操作功能表項在外部終端機中開啟即可。
外部終端機將作為單獨的程式執行,並且可通過 Visual Studio Code 使用者設定項(在工作區設定檔案中無效)來指定具體被啟動的命令列應用的路徑,其中terminal.external.windowsExec
用於 Windows,terminal.external.linuxExec
用於 Linux,terminal.external.osxExec
用於 macOS。
{
// 以下三個設定項用於設定被啟動的外部命令列應用,在工作區設定中無效
"terminal.external.windowsExec": "C:\\WINDOWS\\System32\\cmd.exe",
"terminal.external.linuxExec": "xterm",
"terminal.external.osxExec": "Terminal.app",
}
如何從檔案總管中的資料夾開啟外部終端機?
在預設情況下,檔案總管中的資料夾只有操作功能表項在整合式終端機中開啟,你需要將設定項terminal.explorerKind
設定為external
,這將啟用操作功能表項在外部終端機中開啟。
此外,設定項terminal.explorerKind
還擁有以下有效取值,integrated
(預設值,啟用操作功能表項在整合式終端機中開啟),both
(同時啟用操作功能表項在整合式終端機中開啟和在外部終端機中開啟)。
{
// 同時啟用操作功能表項在整合式終端機中開啟和在外部終端機中開啟
"terminal.explorerKind": "both",
}
如何從原始檔控製面板中的原始檔控製儲存庫開啟外部終端機?
如果原始檔控製面板中的原始檔控製存放庫已經顯示,那麽預設情況下,可通過原始檔控製存放庫中列出的儲存庫的操作功能表項在整合式終端機中開啟,開啟整合式終端機。將設定項terminal.sourceControlRepositoriesKind
設定為external
,可啟用操作功能表項在外部終端機中開啟,以開啟外部終端機。
此外,設定項terminal.sourceControlRepositoriesKind
還擁有以下有效取值,integrated
(預設值,啟用操作功能表項在整合式終端機中開啟),both
(同時啟用操作功能表項在整合式終端機中開啟和在外部終端機中開啟)。
{
// 同時啟用操作功能表項在整合式終端機中開啟和在外部終端機中開啟
"terminal.sourceControlRepositoriesKind": "both",
}
新增 Visual Studio Code 終端機
VSCode 新增開啟終端機的幾種方式影片示範 YouTube
正如之前提到的,終端機可以同時執行多個命令列應用(殼層程式),這些命令列應用會在終端機面板的右邊區域列出。選擇功能表項終端機 | 新增終端,或者使用鍵盤快速鍵Ctrl+Shift+`(macOS 中為⌃+⇧+`),或者在命令選擇區中輸入並執行命令Terminal: Create New Terminal
,或選擇檔案總管中的資料夾的操作功能表項在整合式終端機中開啟,或者點選終端機面板右上角的加號按鈕可以在終端機中啟動一個新的命令列應用。這通常是有效的,當你需要使用不同的命令列應用來執行不同的工作時。
如果 Visual Studio Code 工作區包含了多個根目錄,那麽需要選擇在哪個根目錄新增終端機。
如何在終端機中啟動不同的命令列應用(殼層程式)?
一般情況下,Visual Studio Code 會使用預設終端機設定檔案,並啟動該設定所指定的命令列應用,如果你希望使用其他命令列應用,那麽應使用其對應的終端機設定檔案。點選終端機面板右上角的加號按鈕旁邊的箭頭符號按鈕,將列出所有可用的終端機設定檔案,任意選擇一個即可啟動該終端機設定檔案對應的命令列應用。或者,在命令選擇區中輸入並執行命令Terminal: Create New Terminal (With Profile)
,然後選擇需要啟動的終端機設定檔案。
設定檔案
如果希望了解如何設定預設的 Visual Studio Code 終端機設定檔案或更多關於終端機設定檔案的資訊,你可以檢視設定預設的設定檔案一段或Visual Studio Code 終端機設定檔案使用說明一節。
如何在編輯器區域中新增終端機?
在命令選擇區中輸入並執行命令Terminal: Create New Terminal in Editor Area
,可以在編輯器區域啟動新的命令列應用(殼層程式),而執行命令Terminal: Create New Terminal in Editor Area to the Side
會在編輯器區域的右側啟動新的命令列應用。
如何變更新增終端機的顯示位置?
預設情況下,在執行新增終端機的操作後,被啟動的命令列應用(殼層程式)將顯示在終端機面板中,通過 Visual Studio Code 的設定項terminal.integrated.defaultLocation
可以變更新增命令列的顯示位置,該設定項的有效值包含以下幾種。
view
是設定項terminal.integrated.defaultLocation
的預設值,他表示新增的命令列將顯示在終端機面板中。editor
表示新增的命令列將顯示在編輯器區域。
{
// 新的命令列應用將顯示在編輯器區域中
"terminal.integrated.defaultLocation": "editor",
}
Visual Studio Code 終端機的目前工作目錄
預設情況下,終端機所開啟的命令列應用(殼層程式)會將工作區的根目錄作為其目前工作目錄,你可以通過設定項terminal.integrated.cwd
來指定命令列應用的目前工作目錄。
由於分割終端機而產生的新命令列應用,其目前工作目錄可能由原有命令列應用決定,具體請檢視分割和取消分割終端機一段。
{
// 將工作區的 src 資料夾作為命令列的目前工作目錄
"terminal.integrated.cwd": "src",
}
如何將 Visual Studio Code 中的資料夾作為被開啟的終端機的目前工作目錄?
在檔案總管中,選擇某個資料夾的操作功能表項在整合式終端機中開啟或在外部終端機中開啟,即可開啟命令列應用並將該資料夾作為命令列的目前工作目錄。
Visual Studio Code 終端機中的自動換行
雖然一些命令列應用(殼層程式)自身擁有自動換行功能,但一些文字可能依然無法顯示在終端機面板中。你可以選擇命令列應用的操作功能表項將 [大小] 切換為 [內容寬度],或使用鍵盤快速鍵Alt+Z,或在命令選擇區中輸入並執行命令Terminal: Toggle Size to Content Width
來設定是否啟用終端機的自動換行功能,啟用該功能將使得命令列中的所有內容顯示在可見的區域中。
Visual Studio Code 終端機的緩沖區
命令列應用(殼層程式)中顯示的命令和輸出結果,存放在終端機的緩沖區中,該緩沖區的大小可以通過設定項terminal.integrated.scrollback
修改,預設值為1000
,即最多可保留1000
行的資訊。這裏需要指出,終端機的緩沖區能夠保留的最多行數可能與設定項terminal.integrated.scrollback
不同。
Visual Studio Code 將根據終端機緩沖區的大小來分配記憶體
當你通過設定項terminal.integrated.scrollback
增加終端機的緩沖區大小時,Visual Studio Code 所占用的記憶體也將增加,這些記憶體會被預先分配,以提供流暢的使用者體驗。
{
// 命令列可以保留 200 行的資訊
"terminal.integrated.scrollback": 200,
}
Visual Studio Code 終端機中的複製和貼上操作
終端機中的複製和貼上操作與其所在的作業系統相同,在 Windows 中可以使用鍵盤快速鍵Ctrl+C和Ctrl+V進行複製和貼上,在 Linux 中可以使用鍵盤快速鍵Ctrl+Shift+C和Ctrl+Shift+V進行複製和貼上,在 macOS 中可以使用鍵盤快速鍵⌘+C和⌘+V進行複製和貼上。
除了上述鍵盤快速鍵,終端機還提供了以下命令選擇區命令來完成一些複製和貼上操作。
命令Terminal: Copy Last Command and Output
可用於複製命令列中最後一條被執行的命令和其輸出結果。命令Terminal: Copy Last Command
可用於複製命令列中最後一條被執行的命令。命令Terminal: Copy Last Command Output
可用於複製命令列中最後一條被執行的命令的輸出結果。
命令Terminal: Paste into Active Terminal
可用於將內容貼上至目前使用中的命令列應用。
另外,一些滑鼠操作也可以實作文字的複製和貼上,具體請檢視滑鼠操作一段。
如何自動複製終端機中選取的內容?
預設情況下,選取命令列應用(殼層程式)中的內容,並不會自動複製他們,你可以將設定項terminal.integrated.copyOnSelection
設定為true
,以自動複製選取的內容。
{
// 自動複製選取的內容
"terminal.integrated.copyOnSelection": true,
}
如何停用或啟用終端機中的貼上警告?
如果終端機所開啟的命令列應用(殼層程式)不支援括弧貼上模式(Bracketed Paste Mode)並且不是由readline
處理貼上內容,那麽當你嘗試為命令列貼上多行文字時,Visual Studio Code 將顯示貼上警告「是否確實要將 … 行文本貼至終端?」,此時,有三個選擇,其中「貼上」表示將多行文字貼上至命令列,「貼上作為一行」表示將多行文字轉換為單行文字並貼上至命令列,「取消」表示不執行貼上操作。
要停用上述貼上警告,需要將設定項terminal.integrated.enableMultiLinePasteWarning
設定為never
,該設定項還擁有以下有效值。always
表示 Visual Studio Code 總是在貼上多行文字時顯示警告(是否顯示警告視具體命令列應用而定)。auto
是設定項terminal.integrated.enableMultiLinePasteWarning
的預設值,表示當命令列不支援括弧貼上模式並且不是由readline
處理貼上內容時,貼上多行文字至命令列將導致 Visual Studio Code 顯示貼上警告。
{
// 停用貼上警告
"terminal.integrated.enableMultiLinePasteWarning": "never",
}
Visual Studio Code 終端機的尋找操作
當終端機所開啟的命令列應用(殼層程式)處於活動狀態時,使用鍵盤快速鍵Ctrl+F,或者在命令選擇區中輸入並執行命令Terminal: Focus Find
將開啟尋找小工具。
除了通過尋找小工具進行尋找的相關操作,終端機還提供了一些鍵盤快速鍵(一般需要命令列處於活動狀態)和命令選擇區命令來實作相同的效果。
鍵盤快速鍵Alt+R和命令Terminal: Toggle Find Using Regex
可用於設定是否采用正規表達式進行尋找。鍵盤快速鍵Alt+W和命令Terminal: Toggle Find Using Whole Word
可用於設定是否采用全字拼字。鍵盤快速鍵Alt+C和命令Terminal: Toggle Find Using Case Sensitive
可用於設定是否區分大小寫。
鍵盤快速鍵Shift+Enter(需要尋找小工具處於活動狀態)和命令Terminal: Find Next
可用於尋找下一個符合條件的文字。鍵盤快速鍵Enter(需要尋找小工具處於活動狀態)和命令Terminal: Find Previous
可用於尋找上一個符合條件的文字。
鍵盤快速鍵Escape和命令Terminal: Hide Find
可用於隱藏尋找小工具。
Visual Studio Code 終端機中的選擇操作
對於終端機所開啟的命令列應用(殼層程式),macOS 提供了鍵盤快速鍵⌘+A來選擇命令列中的所有內容,而 Linux/Windows 並未提供全選操作的鍵盤快速鍵,因此,你可能無法在命令列中使用Ctrl+A進行全選。替代方案是在命令選擇區中執行命令Terminal: Select All
,這將選擇命令列的全部內容。
此外,終端機還提供了以下鍵盤快速鍵(一般需要命令列處於活動狀態)和命令選擇區命令來完成一些選擇操作。
命令Terminal: Select To Next Line
可用於選擇命令列的下一行,再次執行該命令將選擇更多內容。命令Terminal: Select To Previous Line
可用於選擇命令列的上一行,再次執行該命令將選擇更多內容。
鍵盤快速鍵Ctrl+Shift+DownArrow和命令Terminal: Select To Next Command
可用於選擇命令列中的下一個命令和其輸出結果,再次執行該命令將選擇更多內容。鍵盤快速鍵Ctrl+Shift+UpArrow和命令Terminal: Select To Previous Command
可用於選擇命令列中的上一個命令和其輸出結果,再次執行該命令將選擇更多內容。
鍵盤快速鍵Escape和命令Terminal: Clear Selection
可用於取消選擇。
Visual Studio Code 終端機中的滑鼠操作
在不同的作業系統中,終端機會以不同的方式處理滑鼠的右鍵按一下操作。在 Windows 中,按一下滑鼠右鍵將複製命令列中被選擇的內容或貼上已複製的內容,在 Linux 中,按一下滑鼠右鍵將快顯操作功能表,在 macOS 中,按一下滑鼠右鍵將選擇滑鼠處的文字並快顯操作功能表。
如何改變在終端機中按一下滑鼠右鍵時的行為?
如果你希望改變在命令列中按一下滑鼠右鍵時的行為,那麽可以使用設定項terminal.integrated.rightClickBehavior
,該設定項擁有以下有效取值。
default
表示按一下滑鼠右鍵將在命令列中顯示操作功能表。copyPaste
表示在按一下滑鼠右鍵時,在命令列中複製已選擇的內容或貼上已複製的內容。paste
表示在按一下滑鼠右鍵時,在命令列中貼上已複製的內容。selectWord
表示在按一下滑鼠右鍵時,選擇滑鼠處的文字並快顯操作功能表。nothing
表示在按一下滑鼠右鍵時,不執行任何操作並將滑鼠事件傳遞給命令列應用。
{
// 按一下滑鼠右鍵時將選擇滑鼠處的文字,並顯示操作功能表
"terminal.integrated.rightClickBehavior": "selectWord",
}
如何改變在終端機中按一下滑鼠中鍵時的行為?
如果你希望改變在命令列中按一下滑鼠中鍵時的行為,那麽可以使用設定項terminal.integrated.middleClickBehavior
,該設定項擁有以下有效取值。
default
表示按一下滑鼠中鍵將使命令列獲得焦點。paste
表示在按一下滑鼠中鍵時,在命令列中貼上已複製的內容。
{
// 按一下滑鼠中鍵時執行貼上操作
"terminal.integrated.middleClickBehavior": "paste",
}
如何通過滑鼠在終端機中快速移動遊標?
在終端機所開啟的命令列應用(殼層程式)中,按住Alt鍵(macOS 中為Option)並按一下滑鼠左鍵可以快速的移動命令列的遊標。由於此功能是通過模擬鍵盤操作來實作的,因此在一些命令列應用中可能無效。通過將設定項terminal.integrated.altClickMovesCursor
設定為false
可停用此功能。
{
// 按住 Alt 鍵並點選滑鼠左鍵時不再移動遊標
"terminal.integrated.altClickMovesCursor": false,
}
如何通過滑鼠調整終端機的字型大小?
如果將設定項terminal.integrated.mouseWheelZoom
設定為true
(預設值為false
),那麽在終端機中按住Ctrl鍵,然後捲動滑鼠滾輪可以調整命令列應用的字型大小,這等同於修改設定項terminal.integrated.fontSize
。
需要指出的是,上述效果可能不會立即觸發,因為滑鼠滾輪會首先滾輪命令列應用的緩沖區。
{
// 按住 Ctrl 鍵並捲動滑鼠可以縮放字型
"terminal.integrated.mouseWheelZoom": true,
}
如何調整滑鼠在終端機中的捲動速度?
設定項terminal.integrated.mouseWheelScrollSensitivity
可用於調整滑鼠在終端機中的捲動速度,比如設定為2
,表示捲動速度為預設的2
倍。
{
// 滑鼠捲動速度為預設的 2 倍
"terminal.integrated.mouseWheelScrollSensitivity": 2,
}
如何強製由終端機來處理滑鼠行為?
在終端機所開啟的命令列中,一些正在執行的程式可能會接管對滑鼠行為的處理,比如支援滑鼠的Vim
,如果希望依然由命令列來處理滑鼠行為,那麽需要按住Alt鍵(macOS 中為Option)。對於 macOS 來說,還需要將設定項terminal.integrated.macOptionClickForcesSelection
設定為true
。
Visual Studio Code 終端機中的輸入操作
如果你希望快速的在終端機所開啟的命令列應用(殼層程式)中輸入檔案或資料夾的路徑,那麽可以將這些檔案或資料夾拖放到命令列中,路徑將進行必要的跳脫然後被輸入至命令列。
在命令選擇區中輸入並執行命令Terminal:Run Selected Text In Active Terminal
,Visual Studio Code 會將目前編輯器中已被選擇的文字作為命令在終端機中執行,如果沒有選擇任何文字,則編輯器遊標所在的整個行將作為命令。
在命令選擇區中輸入並執行命令Terminal: Run Active File In Active Terminal
,Visual Studio Code 會將目前檔案作為命令在終端機中執行。
使用鍵盤快速鍵Ctrl+Alt+R(需要命令列應用處於活動狀態)或在命令選擇區中輸入並執行命令Terminal: Run Recent Command…
,可以選擇並執行某個最近執行過的命令。
如何在將目前編輯器中已選擇文字作為命令之後使終端機獲得焦點?
如果將設定項terminal.integrated.focusAfterRun
設定為terminal
,那麽在命令選擇區中輸入並執行命令Terminal: Run Selected Text In Active Terminal
後,終端機將獲得焦點。
{
// 執行命令之後使命令列獲得焦點
"terminal.integrated.focusAfterRun": "terminal",
}
Visual Studio Code 終端機中的連結
終端機所開啟的命令列應用(殼層程式)可能包含一些連結,這些連結可以在按住Ctrl(macOS 中為⌘)的情況下被滑鼠點選,並在滑鼠暫留時顯示底線。不同類型的連結擁有不同的優先順序和不同的處理方式,下面我們按照優先順序從高到低的順序列出他們。
- URI/URL 連結
對於命令列中的 URI/URL 連結,按住Ctrl並點選他們將啟動相關協定的處理程式。比如,點選
https://www.google.com
可能會啟動瀏覽器。- 檔案連結
對於命令列中的檔案連結,按住Ctrl並點選他們,Visual Studio Code 將嘗試開啟相關檔案,比如,點選
readme.md
可能會開啟目前工作目錄中的檔案readme.md
。如果 Visual Studio Code 發現某個檔案連結指向多個檔案,那麽他將列出這些檔案並讓開發人員選擇開啟其中的哪一個。檔案連結支援使用類似於
file:l:c
的形式來定位,其中l
表示定位至第幾行,c
表示定位至第幾欄,比如,點選readme.md:3:2
可能會開啟檔案readme.md
並定位至該檔案的第3
行的第2
欄。- 資料夾連結
命令列中的資料夾連結與檔案連結類似,只不過按住Ctrl並點選他們,Visual Studio Code 將嘗試在其檔案總管中選取該資料夾連結指向的資料夾,或嘗試啟動另一個新的視窗並開啟該資料夾連結指向的資料夾。比如,在 Windows 中點選資料夾連結
C:\vscode
,會啟動新的 Visual Studio Code 視窗並開啟資料夾C:\vscode
,如果該資料夾未存在於目前的檔案總管中。- 單字連結
如果命令列中的文字不是以上任何一種連結,那麽這些文字可能會被視為單字連結,按住Ctrl並點選他們將導致 Visual Studio Code 嘗試開啟相關檔案(如果單字連結是一個檔案路徑)或在工作區中搜尋相關單字。如果搜尋結果只有一個,那麽 Visual Studio Code 會嘗試開啟該結果,如果搜尋結果有多個,那麽 Visual Studio Code 會讓開發人員進行選擇。與其他類型的連結不同,單字連結不會在滑鼠暫留時顯示底線,除非按住了Ctrl。
單字連結可以像檔案連結一樣使用類似於
file:l:c
的形式來定位,其中l
表示定位至第幾行,c
表示定位至第幾欄,比如settings.json:3:2
。
在命令選擇區中輸入並執行命令Terminal: Open Detected Link…
或使用鍵盤快速鍵Ctrl+Shift+G(可能存在沖突)可以開啟命令列中的連結,這相當於按住Ctrl並點選他們。如果命令列中存在多個連結,那麽 Visual Studio Code 將讓開發人員選擇開啟其中的哪一個。
在命令選擇區中輸入並執行命令Terminal: Open Last URL link
,Visual Studio Code 將嘗試開啟目前命令列中的最後一個 URI/URL 連結,如果不存在任何 URI/URL 連結,則不會產生任何效果。
在命令選擇區中輸入並執行命令Terminal: Open Last Local File Link
,Visual Studio Code 將嘗試開啟目前命令列中的最後一個本機檔案連結,如果不存在任何本機檔案連結,則不會產生任何效果。
如何停用終端機中的檔案和資料夾連結?
由於終端機需要使用檔案系統對命令列應用(殼層程式)中的連結進行檢測,通過確認檔案或資料夾是否真實存在來判定其是否為有效的檔案或資料夾連結,因此,啟用檔案和資料夾連結可能會導致一些效能上的問題,尤其是在高延遲的遠端環境中。你可以將設定項terminal.integrated.enableFileLinks
設定為notRemote
(該設定項的預設值為on
,表示啟用檔案和資料夾連結),以在遠端環境中停用檔案和資料夾連結,或設定為off
,以停用檔案和資料夾連結。
需要指出,在停用檔案和資料夾連結後,命令列中的連結可能會被終端機視為單字連結,按住Ctrl並點選他們依然可能導致 Visual Studio Code 嘗試開啟某個檔案。另外,如果你修改了設定項terminal.integrated.enableFileLinks
,那麽修改僅對新產生的命令列應用有效。
{
// 禁止遠端環境中的檔案連結
"terminal.integrated.enableFileLinks": "notRemote",
}
如何為終端機中的單字連結設定分隔符?
設定項terminal.integrated.wordSeparators
可作為單字連結的分隔符,該設定項的預設值為 ()[]{}',"`─『』「」|
。分隔符將作為單字連結的界限,以區分命令列應用中的不同單字連結,分隔符本身不會作為單字連結的一部分,比如(hello)world,vscode
包含了三個單字連結hello
,world
以及vscode
。
{
// 設定單字分隔符
"terminal.integrated.wordSeparators": " (),",
}
變更 Visual Studio Code 終端機的名稱,圖示,色彩
當你在終端機面板中啟動了多個命令列應用(殼層程式)時,這些命令列應用的名稱和圖示可能相同,區分他們會比較困難。此時,可通過選擇操作功能表項重新命名…,變更圖示…,變更色彩…來修改命令列應用的名稱,圖示以及圖示的色彩。
當然,在命令選擇區中輸入並執行命令Terminal: Change Icon…
,Terminal: Change Color…
可以實作相同的效果。
設定檔案,外觀和樣式
如果希望使用終端機設定檔案來修改命令列應用的名稱,圖示以及圖示色彩,你可以檢視設定 Visual Studio Code 終端機的名稱,圖示,色彩一段。如果希望指定命令列應用的預設名稱,說明,圖示和圖示色彩,你可以檢視自訂 Visual Studio Code 終端機索引標簽的預設名稱,說明,圖示,色彩一段。
移動 Visual Studio Code 終端機
終端機面板中的命令列應用(殼層程式)擁有對應的圖示和名稱,使用滑鼠拖放圖示或名稱,可以使命令列應用在終端機面板與編輯器區域之間移動,或使命令列應用獨立成為一個新的視窗(拖放至 Visual Studio Code 視窗之外),或改變命令列應用之間的順序(如果是分割的命令列,則所有相關命令列將作為一個整體被移動)。
此外,通過選擇命令列應用的操作功能表項將終端移入編輯器區域,將終端機移至新視窗,將終端移入面板,或在命令選擇區中輸入並執行命令Terminal: Move Terminal into Editor Area
,Terminal: Move Terminal into New Window
可以達成相同的目標。
分割和取消分割 Visual Studio Code 終端機
如果你希望更方便的對比命令列中的輸出結果,那麽可以分割終端機,這相當於啟動一個新的命令列應用(殼層程式),新的命令列顯示在原有命令列的右邊,並與其組成一個命令列組。
要分割終端機,可以點選命令列對應的圖示和名稱旁邊的分割按鈕(如果終端機面板包含了多個命令列,那麽需要將滑鼠暫留在命令列的圖示或名稱上),或按住Alt鍵並點選出現的分割按鈕,或選擇某個命令列對應的操作功能表項分割終端機,或點選終端機面板右上角的加號按鈕旁邊的箭頭符號按鈕,然後選擇功能表項分割終端,或在終端機面板中拖放命令列對應的圖示和名稱,或在活動的命令列應用中使用鍵盤快速鍵Ctrl+Shift+5,或在命令選擇區中輸入並執行命令Terminal: Split Terminal
。
要取消分割終端機,可以選擇命令列對應的操作功能表項取消分割終端機,或在命令選擇區中輸入並執行命令Terminal: Unsplit Terminal
。
如何在分割終端機時設定新終端機的目前工作目錄?
在分割終端機時,會產生一個新的命令列應用(殼層程式),通過設定項terminal.integrated.splitCwd
,可以設定新命令列的目前工作目錄,該設定項擁有以下有效值。
inherited
是設定項terminal.integrated.splitCwd
的預設值,他表示新命令列的目前工作目錄與原有命令列的目前工作目錄相同。initial
表示新命令列的目前工作目錄與原有命令列的初始工作目錄(命令列啟動時的目前工作目錄)相同。workspaceRoot
表示新命令列的目前工作目錄為工作區的根目錄,如果根目錄有多個,則需要進行選擇。
關於命令列應用的目前工作目錄,請檢視終端機的目前工作目錄一段。
{
// 新的命令列應用的目前工作目錄為工作區的根目錄
"terminal.integrated.splitCwd": "workspaceRoot",
}
如何在已分割的終端機之間導覽?
當任意被分割的命令列處於活動狀態時,可以使用鍵盤快速鍵Alt+LeftArrow或Alt+RightArrow在命令列組的相關命令列之間導覽。
終止 Visual Studio Code 終端機
如果終端機啟動了過多的命令列應用(殼層程式),則可以點選其對應的終止(垃圾桶)按鈕,或其對應的操作功能表項終止終端機,來終止命令列應用。終止按鈕一般位於終端機面板的右上角,如果終端機面板包含多個命令列,那麽終止按鈕將位於終端機面板的右邊區域,當滑鼠暫留時會出現,此時,對於選取並處於活動狀態的命令列應用,按下Delete鍵也可以將其終止。
此外,在命令選擇區中輸入並執行命令Terminal: Kill the Active Terminal Instance
,可以終止終端機面板中目前使用中的命令列應用(對編輯器區域中的命令列應用無效),輸入並執行命令Terminal: Kill the Active Terminal in Editor Area
,可以終止編輯器區域中目前使用中的命令列應用,輸入並執行命令Terminal: Kill All Terminals
,可以終止 Visual Studio Code 中所有的命令列應用。
終止終端機與隱藏終端機的區別
使用鍵盤快速鍵Ctrl+`或執行命令View: Toggle Terminal
隱藏終端機並不會終止命令列應用(殼層程式),命令列中正在執行的命令也將繼續執行。