Estou procurando um script simples que faça o seguinte. Alguém pode dar um tiro nele (+ se enigmático, por favor, explique o que ele faz), ou me dê algumas dicas para que eu possa executar isso sozinho?
Eu quero iniciar uma aplicação GUI no diretório Applications a partir do prompt da linha de comando, dando-lhe parâmetros, se necessário:
$> launch Foobar arg1 arg2 arg3
O que o script de shell de inicialização deve fazer é:
1) Leia um arquivo de configuração parecido com isto:
/Applications/$0.app
/Applications/$0
/Applications/**/$0.app
/Applications/**/$0
2) Tente corresponder o primeiro argumento ("Foobar") neste caso com cada linha do arquivo de configuração, em ordem, com "*" representando qualquer seqüência de caracteres em um segmento de caminho e "**" representando qualquer segmento de caminho e $0
representando o nome do programa. Portanto, neste caso, ele está procurando por Foobar.app e Foobar no diretório Applications e em qualquer um de seus subdiretórios.
3) Execute o comando resultante com os argumentos restantes, conforme especificado ("arg1", "arg2", "arg3")
Parece fácil, mas eu sou muito novato com scripts de shell no momento. Eu posso acabar usando o JSDB desde que eu saiba como usá-lo. Não estou certo de como especificar que um script chamado "launch" exija que o programa JSDB o execute, ou se é compatível com isso.
Caso de uso específico: se eu estiver em um diretório no prompt de comando, geralmente quero seguir um destes procedimentos:
- Inicie o TextEdit para criar um novo arquivo chamado X
- Inicie o TextEdit para abrir um arquivo chamado X
- Inicie {nome seu programa favorito} para criar ou abrir um arquivo chamado X
- Abra uma janela do Finder neste diretório
Em particular, eu queria editar o meu arquivo Mercurial .hg / hgrc ontem, e demorei muito tempo para descobrir como, .hg é um diretório que está oculto das caixas de diálogo de abertura de arquivos da GUI. Ainda não me lembro como consegui que funcionasse.