Eu uso aliases para poder digitar um pequeno comando para ir para diferentes servidores. Então, ao invés de ter que digitar um longo comando, eu apenas digite o alias. Agora, à medida que você começa a adicionar mais servidores, fica mais difícil lembrar que o server1 tem um alias de 'one' e server97 tem um alias 'fred', então a primeira ideia de alias só funciona para os servidores que eu acesso com mais frequência. p>
Para outros, eu crio uma função (que também é alias) para que, quando eu a chamar, seja apresentada uma lista de servidores para conexão. Com base no número digitado, ele executa o alias para se conectar a esse servidor.
Eu mantenho meus aliases em um arquivo .bash_aliases
(naturalmente, isso depende do SO onde / como você define) e minhas funções em um arquivo .bash_functions
que eu carrego de .bashrc
. Isso permite uma fácil manutenção, em vez de ter um enorme arquivo bashrc
.
Assim, por exemplo, você pode ter as seguintes entradas no seu alias
arquivo:
alias serv1='ssh [email protected]'<br>
alias serv2='ssh [email protected]'<br>
alias start='serverconnect'
E depois tem uma função como esta:
function serverconnect
{
echo "Select server you would like to connect to:"
echo " 1 - Server1"
echo " 2 - Server2"
read choice
case $choice in
1)
serv1
;;
2)
serv2
;;
*)
echo "Invalid choice"
esac
}
Então, se eu precisar conectar-me ao server1, eu apenas digitaria 'serv1', enquanto se eu quisesse uma lista de servidores para conectar, eu digitaria 'start'. Isso pode se tornar um desafio à medida que a lista de servidores aumenta, se você quiser exibi-los todos em uma única lista (o que provavelmente sairia da tela) ou dividi-los ainda mais. Tudo depende do que funciona para o seu fluxo de processo.
Atualização: achei que você também pode precisar da maneira como eu chamo os aliases e
arquivo de função. Em .bashrc
, uso a seguinte sintaxe:
if [ -f "${HOME}/.bash_aliases" ]; then
source "${HOME}/.bash_aliases"
fi