Como faço para suprimir a janela do terminal quando eu inicio um script bash do Spotlight?

1

Quando executo um script bash do Spotlight, uma janela de terminal é iniciada para executá-lo. A janela fecha quando o script é concluído, mas eu gostaria de impedir que essa janela aparecesse na minha área de trabalho.

O script tem várias variantes (no mesmo script) e muito parecido com {e, f,} grep, usa o nome de lançamento, $ 0, para selecionar suas opções. Ele acrescenta algumas coisas a um arquivo e abre um editor (emacs, embora não seja relevante) no arquivo, então a única janela que eu preciso para interação é o editor.

Neste momento, a única sobrecarga por variante é um link para o script. Eu prefiro não usar aplicativos Platypus ou AppleScript para lançá-los, então eu precisaria de um pacote inteiro por variante. Eu gostaria apenas de uma maneira de o terminal funcionar sem mostrar sua janela.

    
por JRobert 10.03.2014 / 14:59

1 resposta

0

Descobriu-se que o Spotlight não indexa todos os links físicos para um arquivo - apenas um deles -, de modo que essa abordagem falha de qualquer maneira.

Os links simbólicos não são indexados, portanto, risque esse.

Os aliases do OS-X são indexados, mas a instância iniciada do script de destino é iniciada com o nome original do script - ele não recebe informações sobre o link que o lançou.

Eu decidi usar um script bash por variante que apenas inicia o script principal com argumentos apropriados, sendo executado em segundo plano:

$ mainscript <args> &

Uma janela de terminal executando o script auxiliar pisca apenas o tempo suficiente para iniciar o script principal em segundo plano. Realiza o que eu preciso.

    
por 26.04.2014 / 21:39