Batch Starting Servers

3

Como posso criar um alias de lote para o bash?

Eu preciso fazer isso:

cd /somefolder
bundle exec unicorn -p 3000
rackup faye.ru -s thin -E production

bundle e rackup - são 2 servidores

por exemplo, eu quero vincular alias z=*all_of_this*

    
por Вячеслав Логинов 12.12.2011 / 11:58

2 respostas

3

Funções Bash são um método, mas eu prefiro criar scripts separados para coisas no meu diretório ~/bin/ :

mkdir ~/bin/
touch ~/bin/z
chmod +x ~/bin/z
gedit ~/bin/z

Em seguida, insira seu script lá (com um cabeçalho) para que fique assim:

#! /bin/bash

cd ""
bundle exec unicorn -p 3000
rackup faye.ru -s thin -E production

Depois é só ligar para z <directory-path> .

é um método mais longo do que um alias ou uma função bash, mas eu prefiro porque é um pouco mais separável do que colocar coisas em seus outros aliases. Eu não vou te culpar se você não concordar!

    
por Oli 12.12.2011 / 13:08
1

Você não quer um alias; você quer uma função bash, que você pode colocar no mesmo lugar que você coloca seus aliases:

z() {
    cd ""   # This is the argument passed in
    bundle exec unicorn -p 3000
    rackup faye.ru -s thin -E production
}

Chame assim:

z /somefolder
    
por Scott Severance 12.12.2011 / 12:17