Como posso abrir vários shells de terminal personalizados?


10

Como personalizo o Terminal para que, quando abro o aplicativo, ele abra várias abas do shell? Se possível, também gostaria que ele executasse um script de ambiente diferente para cada guia.

Exemplo: Execute este comando, source bin/activateque é um comando de instalação virtualenv do Python.

Respostas:


4

Adicione isso ao seu ~/.bash_profilese você usar o bash ou ~/.zshrcse você usar o zsh, alterando o conteúdo da COMMANDSmatriz:

function openterms() {
    COMMANDS=("source bin/activate" "add another here" "continue likewise")
    for command in $COMMANDS
        do osascript -e \
        "tell application \"Terminal\" to do script with command \"$command\""
    done
}

Agora, chamar opentermsum shell abrirá todas as outras conchas que você queria.


3

Estou usando o Keyboard Maestro . Certa vez, gravei uma macro que configura o Terminal (estou usando o iTerm, mas isso não importa) do jeito que eu gosto e fiz com que essa macro fosse acionada ao iniciar o iTerm.

Então, quando eu lanço, está configurado como eu queria. Duas janelas, cinco guias em uma para pastas diferentes com cada guia nomeada adequadamente e outra janela com duas guias conectadas ao meu servidor, uma delas inicia um script de monitoramento. Tudo isso é feito dentro de 2 segundos após o lançamento do Terminal, o que normalmente levaria um minuto ou mais.

Agora não tenho tanto medo de fechar o iTerm se precisar, pois posso reabri-lo no mesmo estado sem nenhum esforço.

A propósito, o Keyboard Maestro também é bom para muitas outras coisas. Comprei recentemente com desconto no mupromo.com, onde descobri pela primeira vez, mas na minha opinião também vale o preço total.


2

Como Josh K mencionou, você pode criar um Grupo de Janelas para abrir uma ou mais janelas com layouts e aparências específicos. Além disso, "perfis de configurações" (Terminal> Preferências> Configurações) pode especificar um comando para executar quando um terminal for criado com esse perfil. Você pode criar um perfil separado para cada comando que deseja executar e criar janelas com esses perfis. Quando você os salva em um grupo de janelas e os abre novamente, esses comandos serão executados nas janelas apropriadas. Você pode até fazer com que o Terminal abra um grupo de janelas específico na inicialização.

No Mac OS X Lion 10.7, existem várias novas melhorias nessa área:

  1. Reiniciar restaurará automaticamente as janelas que estavam abertas quando você sair do Terminal, portanto, não é mais estritamente necessário usar um grupo de janelas (embora elas permitam a você recriar uma configuração específica se você fechou as janelas).

  2. Se você criar um novo terminal usando Shell> Novo Comando, como o Terminal sabe qual comando você executou, ele poderá restaurá-lo, executando-o novamente. O terminal agora restaurará automaticamente os comandos "seguros" † ao continuar.

  3. O Terminal também restaurará esses comandos se você salvar esses tipos de terminais em um grupo de janelas. Além disso, ao salvar um grupo de janelas, há uma opção para restaurar todos os comandos, não apenas os "seguros". Portanto, você não precisa mais criar um perfil de configurações separado para cada comando que deseja executar.

† Os comandos "seguros" incluem qualquer coisa listada em /etc/shells, emacs, vi / vim, nano, pico, parte superior, tela, tmux e qualquer comando criado com Shell> Nova conexão remota (por exemplo, sessões ssh). Observe que apenas top é considerado "seguro" quando usado com argumentos; os outros suportam argumentos que podem fazer coisas que você não gostaria que eles fizessem sem a confirmação do usuário; portanto, eles não são considerados "seguros" para restauração automática, a menos que sejam chamados sem argumentos. Você pode personalizar a lista de comandos "seguros" com "padrões write com.apple.Terminal RestorableCommands". O valor é uma lista de cadeias contendo os nomes dos comandos. Para indicar que argumentos são permitidos, adicione um asterisco após um comando. por exemplo, "top *" torna o top seguro quando usado com argumentos, mas "top" não.


1

Como alternativa, você também pode usar screenpara abrir várias guias em uma única janela. A tela é muito flexível e pode ser configurada para executar qualquer script durante a inicialização do terminal.

Mais informações.


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.