Comando Alias do terminal que abre um novo terminal em uma pasta específica

0

Eu tenho este comando já trabalhando no meu .bash_profile:

alias mysite='cd /Applications/sites/mysite;pwd; php artisan serve --port=9000 | open http://localhost:9000 | open -a Finder ./'

Então:

  • CD's na pasta
  • Inicia o serviço de artesãos
  • Abre uma nova janela do navegador nesse endereço
  • Abre uma nova janela do Finder no mesmo local

O que eu gostaria de fazer, é adicionar um novo comando para fazer algo como:

open -a Terminal cd /Applications/sites/mysite

Então, ele abre uma nova janela do Terminal e o cd está na nova janela de terminal para a mesma pasta.

É possível? Eu tentei isso:

alias mysite='cd /Applications/sites/mysite;pwd; php artisan serve --port=9000 | open http://localhost:9000 | open -a Finder ./ | open -a Terminal cd /Applications/sites/mysite'

Mas eu não posso fazer isso funcionar. Ele faz tudo como no primeiro exemplo, mas nunca abre a nova janela do terminal: (

Obrigado antecipadamente!

    
por Francisco Caviano 31.01.2016 / 23:30

1 resposta

0

Eu não acho que a última parte do seu comando ( open -a Terminal cd /Applications/sites/mysite ) funciona, pois o argumento não é passado para ser executado como um comando, veja uma pergunta semelhante aqui .

Uma solução é usar o AppleScript para a última parte:

osascript -e 'tell application "Terminal" to do script "cd /Applications/sites/mysite"'

Para incluir isso em sua definição de alias, verifique se todas as aspas duplas / únicas correspondem e saem quando necessário:

alias mysite='cd /Applications/sites/mysite; pwd; php artisan serve --port=9000 | open http://localhost:9000 | open -a Finder ./ | osascript -e "tell application \"Terminal\" to do script \"cd /Applications/sites/mysite\""'

Isso funciona para você?

    
por 06.02.2016 / 14:17