Provavelmente abordei esse problema de forma errada. Atualizo minhas máquinas Linux com aliases bash como:
alias upg-pi='\ssh -c [email protected] -C -i $ssh_identity -o ConnectTimeout=$ssh_timeout root@$ssh_ip_rpi4 -t /root/upgrade'
O alias acima, eu escrevi explicitamente, na verdade consiste no ssh-pi
alias:
alias upg-pi='ssh-pi -t /root/upgrade'
Eu tentei expand_aliases
e igual.
Meta
Ser capaz de executar várias janelas do gnome-terminal ao mesmo tempo, como:
function upg_all()
{
gnome-terminal --window -- upg
gnome-terminal --window -- upg-pi
# ...
}
Preciso dormir agora. Vejo você de manhã. Espero que com alguma solução.
É específico do Bash no Mint 22. Tenho controle total sobre este sistema operacional. Obrigado.
A maneira como eu abordaria isso seria criar um (ou mais) mini scripts de shell em um diretório que faça parte do meu diretório
$PATH
. Eu uso$HOME/bin
(tradicional, desde os primeiros dias do BSD/UNIX), mas se você está começando, o padrão XDG sugere$HOME/.local/bin
como local para armazenar executáveisEm
.bash_profile
ou.profile
,Então
Agora você pode criar scripts lá (
upg
,upg-pi
,pg-pi
, etc.) que podem ser acessados como qualquer outro programa (ou sejagnome-terminal --window -- pg-pi
)Então
A expansão de alias ocorre antes da expansão de parâmetros. É por isso que você precisa do
eval
: O analisador de shell precisa ver o nome do alias literalmente.Aliases "aninhados"
man bash
: