Como abrir um terminal a partir do terminal

7

Eu estou no Ubuntu 12.04 e eu uso o terminal gnome como meu terminal padrão. Eu preciso abrir outro terminal na linha de comando. Eu sei que posso fazer isso com o gnome-terminal, mas eu quero executar um comando que sempre abre o terminal padrão para que meu script possa ser executado em outras distros, mesmo aquelas que não usam o gnome.

EDIT: Eu quero um script bash que abre o terminal.

    
por Topo 16.08.2012 / 07:22

3 respostas

9

xterm está disponível por padrão em quase todas as distribuições Linux, se bem me lembro.

Assim, você poderia executar um comando nele, dependendo do shell em que o script foi escrito com algo parecido com isto (o exemplo é para um script de shell bash)

xterm -e "sh script.sh"

Isso gerará uma nova janela do shell e executará seu script.

    
por Nitin Venkatesh 16.08.2012 / 08:19
2

De acordo com a resposta a esta pergunta Como posso definir terminal padrão usado no Unity? Eu criaria um script da seguinte forma:

 eval "$(gsettings get org.gnome.desktop.default-applications.terminal exec)"

Se você gostaria de iniciar um programa dentro do terminal, há também a propriedade 'exec-arg' que especifica o argumento necessário para executar algo no terminal por esse terminal específico. Por exemplo, quando você quer executar um 'tail -f / var / log / messages':

CMD='tail -f /var/log/messages'
eval "$(gsettings get org.gnome.desktop.default-applications.terminal exec) $(gsettings get org.gnome.desktop.default-applications.terminal exec exec-arg) $CMD"

O 'eval' é usado porque 'gsettings' retorna o comando e o argumento entre aspas simples. Esta seria então uma solução genérica para todos os desktops que executam o GNOME / Unity.

    
por rsenn 19.03.2014 / 22:52
0

Você pode querer usar essa combinação de teclas CTRL + SHIFT + T , que abre outra guia na mesma janela de terminal, ou você pode usar esta: CTRL + ALT + T , que abre outra janela de terminal (sem fechar a que você usa atualmente) .).

    
por NlightNFotis 16.08.2012 / 08:17