
Eu sei que isso gnome-terminal
abrirá uma nova janela, gostaria de saber se existe uma maneira de abrir uma nova aba, não apenas uma nova janela?
Depois disso, existe uma maneira de passar um comando para a nova janela, por exemplo
gnome-terminal && cd /
O que resultará em
- Novo terminal é inaugurado
- Novo Terminal então é executado
cd /
[Editar] Essas respostas dirão como passar cmds para outro terminal, não respondem como abrir um novoABA. É isso que procuro, não quero mais de um terminal aberto.
Responder1
GNOME Terminal
não oferece nenhuma solução genérica de linha de comando para abrir uma nova guia em uma janela já existente.
(Por quê? Porquepoderiatem várias janelas abertas e não sabe em qual delas abrir a nova guia. Pode-se dizervocêsó tem uma janela, mas se tal recurso fosse implementado, o software precisaria ser consistente e precisaria fazer algo razoável quando tivesse múltiplas janelas, o que realmente não poderia fazer.)
Hacks, como simular o usuário pressionando uma tecla, existem de acordo com uma resposta já arquivada, mas funcionam apenas no X.Org, não no Wayland.
A partir da próxima versão 3.28, o comando gnome-terminal --tab
abrirá uma nova guia na janela do Terminal GNOME de onde este comando é executado,seeste comando é executado no Terminal GNOME.
(Como ele sabe em qual janela abrir a nova guia neste caso? Ele sabe definindo antecipadamente uma determinada variável de ambiente para um valor diferente em cada um dos terminais que abre. Essa variável de ambiente permite localizar a janela desejada.)
Então, para o seu caso específico, você poderia fazer:
gnome-terminal --tab -- bash -c 'cd /; exec bash'
Dessa forma, você obtém um shell em execução na nova guia assim que cd /
for concluído. Se você acabou de fazer isso gnome-terminal --tab -- some command
, a guia será fechada imediatamente após some command
sair. Ao usá-la bash -c 'some command; exec bash'
, a guia terá um bash
processo em execução após some command
a conclusão.
Responder2
Você deve simular pressionando shift+ ctrl+ Tno terminal. Existem programas para fazer isso:
Se você quiser fazer isso na linha de comando
Por exemplo, você pode usar xdotool
- um programa que permite simular a entrada do teclado.
sudo apt-get install xdotool
então digite no terminal:
xdotool key ctrl+shift+t
Isso simulará o pressionamento da combinação de teclas.