flag / argument no bash alias

6

Eu quero escrever um apelido como tal:

alias add="java -jar vc.jar name"

Existe uma maneira que eu posso usar um curinga para o nome e, portanto, só tem que digitar: adicionar nome - com nome sendo qualquer nome de minha escolha? nome sendo um argumento.

    
por cdhdds 26.09.2018 / 06:33

2 respostas

5

Acho que você está procurando as funções .

 function add() {
   local name="$1"
   java -jar vc.jar "${name}"
 }

Adicione isso ao seu ~/.bashrc ou ~/.profile e apenas faça uma chamada assim:

user@host$ add samplename

Como alternativa, você pode acionar uma expansão de alias adicionando um espaço ou um caractere de tabulação no final da definição do alias.

alias add='java -jar vc.jar '

(Observe o espaço no final da definição).

Depois é só ligar normalmente;

user@host$ add samplename

Deve funcionar.

EDITAR: Como apontado por @kusalananda você pode omitir o espaço e ele ainda funcionará bem.

    
por 26.09.2018 / 06:56
4

Você pode tentar remover o sinalizador name e definir um alias para java -jar vc.jar .

O que você quer fazer:

alias add="java -jar vc.jar"

Agora você definiu um alias. Para executá-lo:

add nameofsomethingyouwant

Você também pode tentar com a solução @ cevhyruz, mas acho que esta é mais simples.

    
por 26.09.2018 / 11:18

Tags