Encurte os comandos que contêm o mesmo prefácio

1

Fazer aliases para comandos comumente usados é bom se você souber quais comandos você usará muito. Mas às vezes o mesmo comando é usado várias vezes seguidas com diferentes argumentos. Por exemplo:

git fetch --some-option
git do-something-else
git another-command
# ... lots more of the same

Neste caso, seria bom largar git de cada vez. Em alguns casos, pode haver vários argumentos para os quais um comando deve começar (por exemplo, sudo apt ... ).

Qual software pode fazer isso?

Observação: eu vi um projeto como esse no GitHub há muito tempo, mas não consigo mais encontrá-lo. Naturalmente, seria bom se alguém se lembrasse do que estou pensando, mas qualquer coisa que se encaixe na descrição (ou seja uma alternativa viável) é uma resposta aceitável.

    
por Nateowami 10.01.2017 / 17:25

2 respostas

1

Se você usar bash - você pode fazer a seguinte função

myprefix() { echo -n "> "; while read -r line; do $line; echo -n "> "; done }

Então, quando você tem um monte de comandos git , você pode emitir

myprefix git

Pressione ctrl-c para recuperar.

    
por jhilmer 10.01.2017 / 17:45
1

Em seu alias desde sua sintaxe shell você está livre para acessar os parâmetros de linha de comando usando $ 1 $ 2 $ 3 para puck parm1 parm2 parm3

alias gitdo="git do-something-else "    
alias gitand="git another-command   "

apenas coloque essas definições de alias em seu arquivo ~ / .bashrc ... o uso seria

gitdo my-parm1

Um truque alternativo para alterar o comando anterior é pesquisá-lo e, em seguida, efetuar edições em andamento ... digamos que eu acabei de editar

git foo bar blah

depois, no mesmo terminal, posso recuperar o comando simplesmente usando a tecla de seta para cima ou fazendo uma pesquisa de linha de comando

ctrl-r foo [enter]

que será recuperado acima para permitir a edição e reemissão (ctrl-e pula para o final da linha, ctrl-a pula para o início da linha ou ctrl seta para a esquerda salta para a direita)

git woo bar blah

outro truque de pesquisa seria

history | grep foo
    
por Scott Stensland 10.01.2017 / 17:33