Abra a janela do terminal a partir do script

1

Eu quero rodar o terminal ou focar pressionando o botão F1 . O que eu tentei implementar:

  1. Adicione um atalho personalizado às configurações do teclado do gnome com esse comando.

    wmctrl -s 4 && pgrep terminator || nohup terminator > /dev/null &'
    
    • wmctrl -s 4 muda de tela,
    • , então pgrep terminator verifica se o terminal já está em execução,
    • nohup terminator > /dev/null & executa o terminal, se não for.

    A tela muda para a direita, mas o terminal não abre.

  2. Coloque o comando (como acima) no arquivo executável *.sh e especifique o caminho absoluto para ele nas configurações de atalho.
    Tudo o mesmo.

  3. Execute o comando acima em outro terminal.
    Funciona como esperado. (opções de tela, terminador aberto)

  4. Execute o script com o comando acima:

    #!/bin/zsh                                                                      
    
    wmctrl -s 4 && pgrep terminator || nohup terminator > /dev/null &
    


    Não funciona novamente. Interruptores de tela, mas a janela do terminador não aparece. Também há um número de pid no terminal depois de executar o script.

Parece que o terminador fecha após o almoço por algum motivo.

O que devo fazer para criar um atalho com essas ações?

    
por German Lashevich 14.01.2017 / 16:34

1 resposta

0

Eu resolvi o problema adicionando -x flag a pgrep . Quando executo meu script chamado terminator.sh , o pgrep sempre retorna verdadeiro e a última parte do comando nunca é executada. Este é o comando correto:

wmctrl -s 4 && pgrep -x terminator || nohup terminator > /dev/null &
    
por 14.01.2017 / 21:02