터미널 프로필
터미널 프로필은 실행 경로, 인수 및 기타 사용자 정의로 구성된 플랫폼별 셸 구성입니다. 기본적으로 여러 프로필이 자동으로 감지되며, 이를 사용자 정의하거나 추가할 수 있습니다.
예시 프로필:
{
"terminal.integrated.profiles.windows": {
"Custom Init": {
"path": "pwsh.exe",
"args": [
"-noexit",
"-file",
"$\{env:APPDATA\}
\\PowerShell\\custom-init.ps1"
]
}
},
"terminal.integrated.defaultProfile.windows": "Custom Init"
}
위의 예시처럼 터미널 프로필에서 변수를 사용할 수 있으며, APPDATA
환경 변수를 사용할 수 있습니다. 사용 가능한 변수 목록은 변수 참조 주제를 참조하세요.
Terminal: Select Default Profile 명령을 실행하여 기본 프로필을 구성할 수 있으며, 이는 새 터미널 드롭다운에서도 접근할 수 있습니다.
기본 터미널 프로필 셸은 Linux 및 macOS에서는 $SHELL
로, Windows에서는 PowerShell로 기본 설정됩니다. VS Code는 대부분의 표준 셸을 자동으로 감지하여 기본으로 구성할 수 있습니다.
프로필 구성
새 프로필을 만들려면 Terminal: Select Default Profile 명령을 실행하고, 기반으로 할 셸의 오른쪽에 있는 구성 버튼을 활성화하세요. 이렇게 하면 settings.json
파일에서 수동으로 조정할 수 있는 새로운 항목이 추가됩니다.
프로필은 path
또는 source
를 사용하여 생성할 수 있으며, 선택적 인수 집합을 사용할 수 있습니다. source
는 Windows에서만 사용할 수 있으며, VS Code가 PowerShell
또는 Git Bash
의 설치를 감지하도록 할 수 있습니다. 또는 셸 실행 파일을 직접 가리키는 path
를 사용할 수 있습니다. 다음은 몇 가지 예시 프로필 구성입니다:
{
"terminal.integrated.profiles.windows": {
"PowerShell -NoProfile": {
"source": "PowerShell",
"args": ["-NoProfile"]
}
},
"terminal.integrated.profiles.linux": {
"zsh (login)": {
"path": "zsh",
"args": ["-l"]
}
}
}
프로필에서 지원되는 기타 인수는 다음과 같습니다:
overrideName
: 현재 실행 중인 프로그램을 감지하여 동적 터미널 제목을 정적 프로필 이름으로 대체할지 여부를 나타내는 부울 값입니다.env
: 환경 변수와 그 값을 정의하는 맵으로, 변수를null
로 설정하면 환경에서 삭제됩니다. 이는terminal.integrated.env.<platform>
설정을 사용하여 모든 프로필에 대해 구성할 수 있습니다.icon
: 프로필에 사용할 아이콘 ID입니다.color
: 아이콘 스타일을 지정하는 테마 색상 ID입니다.
path, args 및 env에서는 모두 변수 사용이 가능합니다.
기본 프로필은 terminal.integrated.defaultProfile.*
설정을 사용하여 수동으로 정의할 수 있습니다. 이는 기존 프로필의 이름으로 설정해야 합니다:
{
"terminal.integrated.profiles.windows": {
"my-pwsh": {
"source": "PowerShell",
"args": ["-NoProfile"]
}
},
"terminal.integrated.defaultProfile.windows": "my-pwsh"
}
통합 터미널 셸은 VS Code의 권한으로 실행됩니다. 관리자 권한이나 다른 권한으로 셸 명령을 실행해야 하는 경우, 터미널 내에서 runas.exe
와 같은 플랫폼 유틸리티를 사용하세요.
내장 프로필 제거
내장 프로필을 제거하고 새 터미널 드롭다운에 표시되지 않도록 하려면 프로필 이름을 null
로 설정하세요. 예를 들어, Windows에서 Git Bash
프로필을 제거하려면 다음 설정을 사용하세요:
{
"terminal.integrated.profiles.windows": {
"Git Bash": null
}
}
작업/디버그 프로필 구성
기본적으로 작업/디버그 기능은 기본 프로필을 사용합니다. 기본 프로필에 무거운 PowerShell 시작 스크립트나 비-POSIX 호환 셸이 있는 경우 이상적이지 않을 수 있습니다. 디버그/작업 기능에서만 사용할 프로필을 구성하려면 terminal.integrated.automationProfile.<platform>
설정을 사용하세요:
{
"terminal.integrated.defaultProfile.osx": "fish",
// 완전히 POSIX 호환 셸을 사용하고 복잡한 ~/.config/fish/config.fish를 실행하지 않도록 합니다.
// 작업 및 디버그를 위해
"terminal.integrated.automationProfile.osx": {
"path": "/bin/sh"
}
}
프로필별 키보드 단축키
특정 프로필로 터미널을 시작하려면 전용 키보드 단축키를 사용하여 workbench.action.terminal.newWithProfile
명령을 사용할 수 있습니다. 이 명령은 프로필 이름과 선택적 위치를 인수로 받습니다. 예를 들어, kbstyle(Ctrl+Shift+T)
를 zsh
프로필로 터미널을 열도록 바인딩하려면:
{
"key": "ctrl+shift+t",
"command": "workbench.action.terminal.newWithProfile",
"args": {
"profileName": "zsh",
"location": "editor"
}
}
안전하지 않은 프로필 감지
일부 셸은 기본적으로 안전하지 않은 경로에 설치됩니다. 예를 들어, Windows 환경에서 다른 사용자가 쓸 수 있는 경로입니다. VS Code는 여전히 이러한 셸을 감지하지만, Terminal: Select Default Profile 명령을 통해 명시적으로 구성되기 전까지는 적절한 프로필로 노출되지 않습니다. 안전하지 않은 프로필을 구성할 때 추가되기 전에 경고가 표시됩니다: