fish alias com uma variável no meio?

1

Eu tenho dislexia, então uso peixes como minha concha, já que é ótimo com previsão, correção e aliasing. Eu estou tentando descobrir como fazer um alias com uma variável dentro seguido pelo resto do alias.

Exemplo: Agora eu tenho alias ppa="sudo add-apt-repository" . Eu posso apenas digitar ppa e depois copiar o ppa: foo-bar / ppa do repo e terminar com sudo apt-add-repository ppa:foo-bar/ppa

Isto é bastante conveniente, por isso, se esta próxima parte for muito difícil ou simples, impossível de se preocupar.

Gostaria de alterar este alias para ppa="sudo add-apt-repository" ; upd (where upd is also aliased as upd="sudo apt update" '). Existe uma maneira de fazer isso? Caso eu não esteja sendo claro o suficiente, aqui está o que eu gostaria de fazer com o CLI neste caso:

alias com variável:
$ ppa [variable]

alias decodificado com variável:
$ sudo sudo add-apt-repository [variable] ; upd

Exemplo acima: alias com variável:
$ ppa ppa:foo-bar/ppa

alias decodificado com variável:
$ sudo sudo add-apt-repository ppa:foo-bar/ppa ; upd

Existe uma maneira de fazer isso? Mais uma vez, se não for ou se for complicado demais para o que vale a pena, não há problema.

Muito obrigado! Eu agradeço!

〜 Ev

PS - Se alguém quiser que eu os ajude a criar seus próprios apelidos para comandos que eles digitam o tempo todo e que desejem fazê-lo usando peixes, sinta-se à vontade para perguntar. Eu ficaria feliz em ajudar!

    
por Ev- 05.08.2016 / 09:40

2 respostas

1

Não, você não pode fazer isso com um alias de peixe. Mas as funções dos peixes são muito melhores:

function upd
    sudo apt update
end
funcsave upd

function ppa
    sudo add-apt-repository $argv
    upd
end
funcsave ppa

Copie e cole isso no seu terminal e você deve ser bom para ir.

Tenha em mente que

alias foo=bar

é simplesmente um atalho para

function foo; bar $argv; end
    
por glenn jackman 05.08.2016 / 21:36
0

Eu criaria um script para isso e faria o apelido chamar o script. Algo parecido com isto (não testado): add_ppa_and_update.sh

#!/bin/bash
# Take first argument and use it to add the repository
add-apt-repository 
# Update
apt update

Agora, forneça o script run permissions sudo chmod 755 add_ppa_and_update.sh e crie um alias que chame o script com sudo sudo add_ppa_and_update.sh [variable] .

    
por Katu 05.08.2016 / 11:08