
键盘快捷键:ctrl +`(esc下面得按键)

Ctrl+Shift+P -> term

打开外部终端

拆分终端
要打开终端:
将Ctrl +`键盘快捷键与反引号一起使用。使用查看 > 终端菜单命令。在命令面板(Ctrl + Shift + P)中,使用“ 查看:切换集成终端”命令。

管理多个终端
您可以创建多个打开到不同位置的终端,并在它们之间轻松导航。可以通过单击TERMINAL面板右上角的加号图标或触发Ctrl + Shift +`命令来添加终端实例。此操作将在下拉列表中创建另一个条目,可用于在它们之间进行切换。

增加N个新得终端
按下垃圾桶按钮删除终端实例。

端子分割
您也可以通过触发Ctrl + Shift + 5命令或通过右键单击上下文菜单来拆分终端。


聚焦拆分的终端窗格时,可以使用以下命令之一移动焦点并调整大小:
键 |
命令 |
Alt +左
聚焦上一个窗格
Alt +右
聚焦下一个窗格
未分配
调整左窗格的大小
未分配
调整右窗格大小
未分配
调整窗格大小
未分配
调整窗格大小
组态
使用的外壳默认
<pre class="brush:php;toolbar:false;">$SHELL
登录后复制
在Linux和
macOS上使用,在Windows 10上使用PowerShell,在Windows早期版本上使用cmd.exe。可以通过
<pre class="brush:php;toolbar:false;">terminal.integrated.shell.*
登录后复制


默认是powershell,可以更改别的shell
在用户设置中进行设置来手动覆盖这些设置。可以使用
<pre class="brush:php;toolbar:false;">terminal.integrated.shellArgs.*
登录后复制
用户设置将参数传递到终端外壳。


视窗
对于Windows,在终端下拉列表中有一个方便的shell选择器,使您可以在几个检测到的shell之间进行选择,包括Command Prompt,PowerShell,PowerShell Core,Git Bash和WSL Bash。如果您希望在其中访问“ 终端:选择默认外壳程序”命令,也可以通过“命令面板”使用。
就像在其他平台上一样,您可以微调设置文件中使用的确切可执行文件,例如:
代码语言:
javascript代码运行次数:0
运行
复制
<pre class="brush:php;toolbar:false;">// Command Prompt"terminal.integrated.shell.windows": "C:\Windows\System32\cmd.exe"// PowerShell"terminal.integrated.shell.windows": "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe"// Git Bash"terminal.integrated.shell.windows": "C:\Program Files\Git\bin\bash.exe"// Bash on Ubuntu (on Windows)"terminal.integrated.shell.windows": "C:\Windows\System32\bash.exe"
登录后复制

runas.exe
Shell参数
您可以在启动外壳程序时将参数传递给外壳程序。
例如,要启用运行bash作为登录shell(运行
<pre class="brush:php;toolbar:false;">.bash_profile
登录后复制
),请传入
<pre class="brush:php;toolbar:false;">-l
登录后复制
参数(带双引号):代码语言:
javascript
代码运行次数:0
运行
复制
<pre class="brush:php;toolbar:false;">// Linux"terminal.integrated.shellArgs.linux": ["-l"]
登录后复制
使用变量
在
<pre class="brush:php;toolbar:false;">shell
登录后复制
,
<pre class="brush:php;toolbar:false;">shellArgs
登录后复制
,
<pre class="brush:php;toolbar:false;">env
登录后复制
,和
<pre class="brush:php;toolbar:false;">cwd
登录后复制
终端设置的所有支持解决变量:代码语言:javascript
代码运行次数:0
运行
复制
<pre class="brush:php;toolbar:false;">// Open the terminal in the currently opened file's directory"terminal.integrated.cwd": "${fileDirname}"登录后复制



预定义变量
支持以下预定义变量:
$ {workspaceFolder} -在VS Code中打开的文件夹的路径$ {workspaceFolderBasename} -在VS Code中打开的文件夹名称,不带任何斜杠(/)$ {file} -当前打开的文件$ {relativeFile} -当前相对于打开的文件
<pre class="brush:php;toolbar:false;">workspaceFolder
登录后复制
$ {relativeFileDirname} -当前打开的文件相对于的目录名
<pre class="brush:php;toolbar:false;">workspaceFolder
登录后复制
$ {fileBasename} -当前打开的文件的基本名称$ {fileBasenameNoExtension} -当前打开的文件的基本名称,没有文件扩展名$ {fileDirname} -当前打开的文件的目录名$ {fileExtname} -当前打开的文件的扩展名$ {cwd} -启动时任务运行器的当前工作目录$ {lineNumber} -活动文件中当前选择的行号$ {selectedText} -活动文件中的当前选定文本$ {execPath} -正在运行的VS Code可执行文件的路径$ {defaultBuildTask} -默认构建任务的名称预定义变量示例
假设您具有以下要求:
位于
<pre class="brush:php;toolbar:false;">/home/your-username/your-project/folder/file.ext
登录后复制
您的编辑器中打开的文件;该目录
<pre class="brush:php;toolbar:false;">/home/your-username/your-project
登录后复制
将作为您的根工作空间打开。
因此,每个变量将具有以下值:
$ {workspaceFolder} -
<pre class="brush:php;toolbar:false;">/home/your-username/your-project
登录后复制
$ {workspaceFolderBasename} -
<pre class="brush:php;toolbar:false;">your-project
登录后复制
$ {file} -
<pre class="brush:php;toolbar:false;">/home/your-username/your-project/folder/file.ext
登录后复制
$ {relativeFile} -
<pre class="brush:php;toolbar:false;">folder/file.ext
登录后复制
$ {relativeFileDirname} -
<pre class="brush:php;toolbar:false;">folder
登录后复制
$ {fileBasename} -
<pre class="brush:php;toolbar:false;">file.ext
登录后复制
$ {fileBasenameNoExtension} -
<pre class="brush:php;toolbar:false;">file
登录后复制
$ {fileDirname} -
<pre class="brush:php;toolbar:false;">/home/your-username/your-project/folder
登录后复制
$ {fileExtname} -
<pre class="brush:php;toolbar:false;">.ext
登录后复制
$ {lineNumber} -光标的行号$ {selectedText} -在代码编辑器中选择的文本$ {execPath} -Code.exe的位置代码语言:javascript
代码运行次数:0
运行
复制
<pre class="brush:php;toolbar:false;">
登录后复制
终端显示设置
您可以使用以下设置来自定义终端的集成字体和行高:
<pre class="brush:php;toolbar:false;">terminal.integrated.fontFamily
登录后复制
<pre class="brush:php;toolbar:false;">terminal.integrated.fontSize
登录后复制
<pre class="brush:php;toolbar:false;">terminal.integrated.fontWeight
登录后复制
<pre class="brush:php;toolbar:false;">terminal.integrated.fontWeightBold
登录后复制
<pre class="brush:php;toolbar:false;">terminal.integrated.lineHeight
登录后复制





终端键绑定
“ 视图:切换集成终端”命令绑定到Ctrl +`,可以快速切换集成终端面板的视图范围。
以下是可在集成终端中快速导航的键盘快捷键:
键 |
命令 |
Ctrl +`
显示集成终端
Ctrl + Shift +`
创建新终端
Ctrl + Alt + PageUp
向上滚动
Ctrl + Alt + PageDown
向下滚动
Shift + PageUp
向上滚动页面
Shift + PageDown
向下滚动页面
Ctrl + Home
滚动到顶部
Ctrl +结束
滚动到底部
未分配
清除终端
其他终端命令可用,并且可以绑定到您喜欢的键盘快捷键,例如:
<pre class="brush:php;toolbar:false;">workbench.action.terminal.focus
登录后复制
:聚焦终端。这类似于切换,但是如果可见,则将终端聚焦而不是隐藏终端。
<pre class="brush:php;toolbar:false;">workbench.action.terminal.focusNext
登录后复制
:聚焦下一个终端实例。
<pre class="brush:php;toolbar:false;">workbench.action.terminal.focusPrevious
登录后复制
:聚焦上一个终端实例。
<pre class="brush:php;toolbar:false;">workbench.action.terminal.focusAtIndexN
登录后复制
:将终端对准索引N(N = 1-9)
<pre class="brush:php;toolbar:false;">workbench.action.terminal.kill
登录后复制
:删除当前的终端实例。
<pre class="brush:php;toolbar:false;">workbench.action.terminal.runSelectedText
登录后复制
:在终端实例中运行选定的文本。
<pre class="brush:php;toolbar:false;">workbench.action.terminal.runActiveFile
登录后复制
:在终端实例中运行活动文件。

复制粘贴
复制和粘贴的键绑定遵循平台标准:
Linux:Ctrl + Shift + C和Ctrl + Shift + VmacOS:Cmd + C和Cmd + VWindows:Ctrl + C和Ctrl + V右键点击行为
右键单击行为因平台而异:
Linux:显示上下文菜单。macOS:选择光标下的单词并显示上下文菜单。Windows:如果有选择,则复制并拖放选择,否则粘贴。
可以使用
<pre class="brush:php;toolbar:false;">terminal.integrated.rightClickBehavior
登录后复制
设置进行配置。

强制键绑定通过终端
当焦点集中在集成终端中时,由于击键被传递到终端本身并由终端自身使用,因此许多键绑定将不起作用。有一个硬编码的命令列表,这些命令跳过了外壳程序的处理,而是发送到VS Code绑定系统。您可以使用
<pre class="brush:php;toolbar:false;">terminal.integrated.commandsToSkipShell
登录后复制
设置来自定义此列表。通过将命令名称添加到列表中,可以将命令添加到此列表中,而通过将命令名称添加到前缀为的列表中,可以删除命令
<pre class="brush:php;toolbar:false;">-
登录后复制
。代码语言:javascript
代码运行次数:0
运行
复制
<pre class="brush:php;toolbar:false;">{ "terminal.integrated.commandsToSkipShell": [ // Ensure the toggle sidebar visibility keybinding skips the shell "workbench.action.toggleSidebarVisibility", // Send quick open's keybinding to the shell "-workbench.action.quickOpen", ]}登录后复制
查看设置详细信息以查看默认命令的完整列表。
终端中的和弦键绑定
默认情况下,当和弦快捷键是最高优先级的快捷键时,它将始终跳过终端外壳(绕过
<pre class="brush:php;toolbar:false;">terminal.integrated.commandsToSkipShell
登录后复制
),并由VS Code而不是终端进行评估。除非您在Windows / Linux上并且希望您的外壳使用ctrl + k(对于bash,这会在光标后剪切行),否则通常这是所需的行为。可以使用以下设置禁用此设置:代码语言:javascript
代码运行次数:0
运行
复制
<pre class="brush:php;toolbar:false;">{ "terminal.integrated.allowChords": false}登录后复制
找
集成终端具有基本的查找功能,可以通过unassigned触发。
如果要让Ctrl + F转到外壳程序而不是在Linux和Windows上启动“查找”小部件,则需要删除键绑定,如下所示:
代码语言:javascript
代码运行次数:0
运行
复制
<pre class="brush:php;toolbar:false;">// Windows/Linux{ "key": "ctrl+f", "command": "-workbench.action.terminal.focusFindWidget", "when": "terminalFocus" },// macOS{ "key": "cmd+f", "command": "-workbench.action.terminal.focusFindWidget", "when": "terminalFocus" },登录后复制
运行选定的文本
要使用该
<pre class="brush:php;toolbar:false;">runSelectedText
登录后复制
命令,请在编辑器中选择文本,然后运行命令Terminal:通过命令面板(Ctrl + Shift + P)在Active Terminal中运行选定的文本:



终端将尝试运行所选文本。

如果在活动编辑器中未选择任何文本,则光标所在的行将在终端中运行。
发送来自绑定的文本
该
<pre class="brush:php;toolbar:false;">workbench.action.terminal.sendSequence
登录后复制
命令可用于向终端发送特定的文本序列,包括转义序列。这使诸如发送箭头键,输入,光标移动等操作成为可能。下面的示例显示了使用此功能可以实现的功能,它会跳过光标左侧的单词(Ctrl +向左键)并按退格键:代码语言:javascript
代码运行次数:0
运行
复制
<pre class="brush:php;toolbar:false;">{ "key": "ctrl+u", "command": "workbench.action.terminal.sendSequence", "args": { "text": "u001b[1;5Du007f" }}登录后复制
此功能支持变量替换。
请注意,该命令仅适用于
<pre class="brush:php;toolbar:false;">u0000
登录后复制
通过字符代码使用字符的格式(不适用于
<pre class="brush:php;toolbar:false;">