Como usar argumentos de linha de comando para terminal do Windows
Você pode usar wt.exe
para abrir uma nova instância do Terminal do Windows por meio da linha de comando. Você também pode usar o alias de execução wt
em vez disso.
Observação
Se você criou o Terminal do Windows com base no código-fonte no GitHub, poderá abrir esse build usando wtd.exe
ou wtd
.
Sintaxe de linha de comando
A linha de comando wt
aceita dois tipos de valores: opções e comandos. As opções são uma lista de sinalizadores e outros parâmetros que podem controlar o comportamento da linha de comando wt
como um todo. Os comandos fornecem a ação ou a lista de ações separadas por ponto e vírgula que devem ser implementadas. Se nenhum comando for especificado, o comando será considerado como new-tab
por padrão.
wt [options] [command ; ]
Observação
O comportamento do comando wt.exe
pode ser afetado pela propriedade windowingBehavior
. Essa configuração pode ser ajustada como padrão entre abrir uma nova janela ou abrir uma nova guia.
Para exibir uma mensagem de ajuda listando os argumentos de linha de comando disponíveis, digite: wt -h
, wt --help
, wt -?
ou wt /?
.
Opções e comandos
Abaixo, temos a lista completa de comandos e opções compatíveis com a linha de comando wt
.
Opção | Descrição |
---|---|
--help, -h, -?, /? |
Exibe a mensagem de ajuda. |
--maximized, -M |
Inicia o terminal maximizado. |
--fullscreen, -F |
Inicia o terminal como tela inteira. |
--focus, -f |
Inicia o terminal no modo de foco. Pode ser combinado com maximized . |
--pos x,y |
Inicia o terminal na posição fornecida. x ou y pode ser omitido para usar o valor padrão das configurações. |
--size c,r |
Inicia o terminal com o número especificado de colunas (c ) e linhas (r ). |
--window, -w window-id |
Executa o comando especificado em uma janela específica. |
O parâmetro --window
pode ser usado para enviar comandos a janelas de terminal existentes.
window-id
pode ser a ID de inteiro de uma janela ou o nome de uma janela. Ele também aceita os seguintes valores reservados:
new
ou-1
: sempre executar este comando em uma nova janelalast
ou0
: sempre executar este comando na última janela usada
Se não existir nenhuma janela com o window-id
fornecido, uma janela será criada com a mesma ID e o mesmo nome.
Por exemplo, a execução de wt -w _quake
abrirá uma nova "janela no modo quake". Uma nova execução desse comando abrirá uma nova guia na janela no modo quake existente.
Comando nova guia
Usado para criar uma guia. Veja também a ação newTab
.
Comando | Parâmetro | Descrição | Valores |
---|---|---|---|
new-tab , nt |
--profile, -p profile-name |
Cria uma guia com base no nome do perfil atribuído. | Nome do perfil |
new-tab , nt |
--startingDirectory, -d starting-directory |
Cria uma guia com base no caminho do diretório inicial atribuído. | Caminho do diretório |
new-tab , nt |
commandline |
Cria uma guia com base na linha de comando atribuída. | Executável com comandos opcionais |
new-tab , nt |
--title |
Cria uma guia com o título atribuído. | Texto a ser usado como o título da guia |
new-tab , nt |
--tabColor |
Cria uma guia com a cor da guia atribuída. | Cor hexa como #RGB ou #RRGGBB |
new-tab , nt |
--suppressApplicationTitle |
Substituir a configuração suppressApplicationTitle do perfil e defini-la como true |
|
new-tab , nt |
--useApplicationTitle |
Substituir a configuração suppressApplicationTitle do perfil e defini-la como false |
|
new-tab , nt |
--colorScheme scheme-name |
Substituir a configuração colorScheme do perfil e defini-la como o esquema das configurações com o nome scheme-name |
O nome de um esquema de cores nas configurações |
Dica
Se você alterar o título de uma guia no Terminal do Windows e quiser que esse título persista, deverá habilitar a opção suppressApplicationTitle definindo-a como true
.
Comando dividir painel
Usado para criar um painel dividido. Veja também a ação splitPane
.
Comando | Parâmetro | Descrição | Valores |
---|---|---|---|
split-pane , sp |
-H, --horizontal , -V, --vertical |
Cria um painel de janela dividida horizontal ou verticalmente. | N/D Nenhum valor adicional a ser atribuído. |
split-pane , sp |
--profile, -p profile-name |
Cria um painel de janela dividida com base no perfil de linha de comando atribuído. Se esse parâmetro não for atribuído, o perfil padrão será usado. | Nome do perfil |
split-pane , sp |
--startingDirectory, -d starting-directory |
Cria um painel de janela dividida com base no caminho do diretório inicial atribuído. Se esse parâmetro não for atribuído, o diretório inicial padrão será usado. | Caminho do diretório |
split-pane , sp |
--title |
Cria um painel de janela dividida com o título atribuído. | Texto a ser usado como o título da guia |
split-pane , sp |
--tabColor |
Cria um painel de janela dividida com a cor de guia atribuída. | Cor hexa como #RGB ou #RRGGBB |
split-pane , sp |
--size, -s size |
Cria um painel de janela dividida com o tamanho atribuído. | Float que especifica a parte do painel pai a ser usada, representada por um decimal. Por exemplo, .4 para representar 40% do painel pai. |
split-pane , sp |
commandline |
Cria um painel de janela dividida com base na linha de comando atribuída. | Executável com comandos opcionais |
split-pane , sp |
--duplicate, -D |
Cria um painel de janela dividida que é uma duplicata do painel atual. | N/D Nenhum valor adicional a ser atribuído. |
split-pane , sp |
--suppressApplicationTitle |
Substituir a configuração suppressApplicationTitle do perfil e defini-la como true |
|
split-pane , sp |
--useApplicationTitle |
Substituir a configuração suppressApplicationTitle do perfil e defini-la como false |
|
split-pane , sp |
--colorScheme scheme-name |
Substituir a configuração colorScheme do perfil e defini-la como o esquema das configurações com o nome scheme-name |
O nome de um esquema de cores nas configurações |
Comando focar guia
Usado para focalizar uma guia específica dentro da janela. Veja também a ação switchToTab
.
Comando | Parâmetro | Descrição | Valores |
---|---|---|---|
focus-tab , ft |
--target, -t tab-index |
Volta o foco para uma guia específica de acordo com seu número no índice de guias. | Índice de guias como um inteiro |
Comando mover foco
Usado para mover o foco dentro da janela. Veja também a ação moveFocus
.
Comando | Parâmetro | Descrição | Valores |
---|---|---|---|
move-focus , mf |
<direction> |
Move o foco entre painéis. | Veja abaixo os valores de direction aceitos |
Valores de direction
aceitos
up
,down
,left
ouright
movem o foco na direção determinada.first
move o foco para o primeiro painel folha na árvore.previous
move o foco para o último painel usado antes do painel atual.nextInOrder
,previousInOrder
movem o foco para o painel seguinte ou anterior na ordem de criação.
Comando move-pane
Usado para mover um painel dentro da janela. Veja também a ação movePane
.
Comando | Parâmetro | Descrição | Valores |
---|---|---|---|
move-pane , mp |
--tab,-t <index> |
Mover o painel ativo para a guia fornecida na janela | O índice indexado em zero da guia para a qual o painel deve ser movido. |
Comando swap-pane
Usado para trocar a posição de dois painéis dentro da janela. Veja também a ação swapPane
.
Comando | Parâmetro | Descrição | Valores |
---|---|---|---|
swap-pane |
<direction> |
Trocar o painel pelo painel na direção determinada | Veja abaixo os valores de direction aceitos |
Valores de direction
aceitos (são os mesmos valores que os do subcomando move-focus
)
up
,down
,left
ouright
: trocar o painel ativo pelo que está na direção determinada.first
: trocar o painel ativo pelo primeiro painel folha na árvore.previous
: trocar o painel ativo pelo último painel usado antes do painel atual.nextInOrder
,previousInOrder
: trocar o painel ativo pelo painel seguinte ou anterior na ordem de criação.
Exemplos de argumentos de linha de comando
Os comandos podem variar um pouco dependendo da linha de comando que você está usando.
Passando um argumento para o shell padrão
Para iniciar uma instância do Terminal do Windows e fazer com que ela execute um comando, chame wt.exe
seguido pelo comando.
Veja um exemplo de chamada para o Terminal do Windows para passar um argumento de comando ping para ecoar um endereço IP:
wt ping learn.microsoft.com
Veja um exemplo de chamada para o Terminal do Windows para abrir uma nova guia com uma linha de comando do PowerShell, confirmar a chamada para o comando Start-Service e abrir outra guia com o Prompt de Comando do Windows aberto no diretório /k
:
wt new-tab PowerShell -c Start-Service ; new-tab cmd /k dir
Direcionar a uma janela específica
Abaixo estão exemplos de como direcionar janelas específicas usando a opção --window,-w
.
// Open a new tab with the default profile in the current window
wt -w 0 nt
// Open a new tab in a new window with the default profile
wt -w -1 nt
// Open a new tab in the first-created terminal window with the default profile
wt -w 1 nt
// Open a new tab in the terminal window named foo with the default profile. If foo does not exist, create a new window named foo.
wt -w foo nt
Abrir uma nova instância de perfil
Para abrir uma nova instância de terminal (nesse caso o comando abrirá o perfil chamado "Ubuntu-18.04"), digite:
wt -p "Ubuntu-18.04"
O sinalizador -p
é usado para especificar o perfil do Terminal do Windows que deve ser aberto. Substitua "Ubuntu-18.04" pelo nome de um perfil de terminal que você tenha instalado. Isso sempre abrirá uma nova janela. O Terminal do Windows ainda não é capaz de abrir novas guias ou painéis em uma instância existente.
Direcionar a um diretório
Para especificar a pasta que deve ser usada como o diretório inicial para o console, que neste caso é o diretório d:\, digite:
wt -d d:\
Várias guias
Para abrir uma nova instância de terminal com várias guias, digite:
wt ; ;
Para abrir uma nova instância de terminal com várias guias, nesse caso, um perfil de prompt de comando e um perfil do PowerShell, digite:
wt -p "Command Prompt" ; new-tab -p "Windows PowerShell"
Vários painéis
Para abrir uma nova instância de terminal com uma guia que contém três painéis que executam um perfil de prompt de comando, um perfil do PowerShell e seu perfil padrão executando uma linha de comando do WSL, digite:
wt -p "Command Prompt" ; split-pane -p "Windows PowerShell" ; split-pane -H wsl.exe
O sinalizador -H
(ou --horizontal
) indica que você deseja que os painéis sejam divididos horizontalmente. O sinalizador -V
(ou --vertical
) indica que você deseja que os painéis sejam divididos verticalmente.
Várias guias e painéis
Os comandos new-tab
e split-pane
podem ser sequenciados para obter várias guias, cada uma com painéis divididos. Para abrir uma nova instância do terminal com duas guias, cada uma com dois painéis executando um Prompt de Comando e uma linha de comando WSL, com cada guia em um diretório diferente, digite:
wt -p "Command Prompt" ; split-pane -V wsl.exe ; new-tab -d c:\ ; split-pane -H -d c:\ wsl.exe
Título do painel
Para abrir uma nova instância de terminal com títulos personalizados para cada painel de terminal, use o argumento --title
. Para definir o título de cada painel ao abrir várias guias, digite:
wt --title tabname1 ; new-tab -p "Ubuntu-18.04" --title tabname2
Os painéis na mesma guia podem ter títulos diferentes, o que refletirá sobre o título da guia, dependendo de qual painel tem foco. Para nomear painéis independentes, você pode definir o título depois de dividir os painéis inserindo:
wt --title pane1 ; split-pane -p "Command Prompt" --title pane2
Usando o bloco de aplicativo
Para abrir uma nova instância do terminal, permitindo que os aplicativos dentro dela definam o título da guia enviando mensagens de alteração de título, use o sinalizador --useApplicationTitle
. Para suprimir essas mensagens, use o sinalizador --suppressApplicationTitle
. Se nenhum desses sinalizadores for fornecido, o comportamento será herdado das configurações do perfil. Para abrir uma guia com título tabname
que não será substituída pelo aplicativo, digite:
wt --title tabname --suppressApplicationTitle
Cor da guia
Para abrir uma nova instância de terminal com cores de guias personalizadas, use o argumento --tabColor
. Esse argumento substitui o valor definido no perfil, mas também pode ser substituído usando o seletor de cores da guia. No exemplo a seguir, é criado um terminal com duas guias de cores diferentes:
wt --tabColor #009999 ; new-tab --tabColor #f59218
Quando --tabColor
é definido para uma guia, ele é associado ao primeiro painel dessa guia. Portanto, em uma guia com vários painéis, a cor será aplicada somente se o primeiro painel estiver em foco. Para definir a cor da guia para painéis adicionais, também será necessário adicionar o parâmetro --tabColor
ao subcomando split-pane
. No exemplo a seguir, uma guia com dois painéis é criada com as cores das guias especificadas para cada painel:
wt new-tab --tabColor '#009999' `; split-pane --tabColor '#f59218'
Esquema de cores
Para abrir uma nova instância do terminal com um esquema de cores específico (em vez do colorScheme
definido no perfil), use o argumento --colorScheme
. Esse argumento substitui o valor definido no perfil.
wt --colorScheme Vintage ; split-pane --colorScheme "Tango Light"
Foco da guia
Para abrir uma nova instância de terminal com uma guia específica em foco, use o sinalizador -t
(ou --target
) juntamente com o número de índice de tabulação. Para abrir o perfil padrão na primeira guia e o perfil "Ubuntu-18.04" focalizado na segunda guia (-t 1
), digite:
wt ; new-tab -p "Ubuntu-18.04" ; focus-tab -t 1
Exemplos de vários comandos do PowerShell
O Terminal do Windows usa o caractere de ponto e vírgula (;
) como um delimitador para separar comandos na linha de comando wt
. Entretanto, o PowerShell também usa ;
como um separador de comandos. Para solucionar esse erro, você pode usar os seguintes truques para executar vários comandos wt
por meio do PowerShell. Em todos os exemplos a seguir, uma nova janela de terminal é criada com três painéis: um prompt de comando em execução, outro com o PowerShell e o último executando o WSL.
Os exemplos a seguir não usam start
para executar a linha de comando. Em vez disso, há dois outros métodos para escapar a linha de comando:
- Apenas escapar pontos-e-vírgulas para que
PowerShell
os ignore e os transmita-os diretamente parawt
. - Usando
--%
, de modo que o PowerShell tratará o restante da linha de comando como argumentos para o aplicativo.
wt new-tab "cmd" `; split-pane -p "Windows PowerShell" `; split-pane -H wsl.exe
wt --% new-tab cmd ; split-pane -p "Windows PowerShell" ; split-pane -H wsl.exe
Em ambos os exemplos, a janela do Terminal do Windows recém-criada criará a janela analisando corretamente todos os argumentos de linha de comando fornecidos.
No entanto, esses métodos não são recomendados atualmente, pois o PowerShell aguardará a janela do terminal recém-criada ser fechada antes de retornar o controle ao PowerShell. Por padrão, o PowerShell sempre aguardará que os aplicativos da Microsoft Store (como o Terminal do Windows) sejam fechados antes de retornar ao prompt. Observe que isso é diferente do comportamento do prompt de comando, que retornará ao prompt imediatamente.
Adicionar o executável do Terminal do Windows ao seu CAMINHO
Para adicionar o arquivo executável do Terminal do Windows (wt.exe) ao seu CAMINHO, habilite o "alias de execução de aplicativo" na página Gerenciar alias de execução do aplicativo das Configurações do Windows. O alias do Terminal do Windows fica ativado por padrão, mas vale a pena confirmar caso esteja tendo problemas para acessá-lo.
Se você ainda estiver tendo problemas para acessar alias de execução do aplicativo, talvez seja necessário verificar se o CAMINHO contém: %LOCALAPPDATA%\Microsoft\WindowsApps
. Não tente fazer alterações em C:\Program Files\WindowsApps
.
Windows Terminal