Usando argumentos no texto de substituição de um alias

1

O manual do bash diz o alias,

There is no mechanism for using arguments in the replacement text, as in csh. If arguments are needed, a shell function should be used (see Section 3.3 [Shell Functions], page 17).

O que significam as duas frases?

"usando argumentos no texto de substituição" não parece significar o seguinte, que é bem-sucedido

$ alias foo="echo bac" 
$ foo
bac
$ foo hello
bac hello
    
por Tim 18.12.2016 / 23:34

1 resposta

1

Suponho que o texto não seja perfeito, a menos que você o leve muito literalmente. O Bash não substitui nenhum texto aliased por argumentos; ele adicionará argumentos ao texto, como você viu. Isto está em contraste com aliases da CSH que expande os argumentos dentro da substituição texto.

A segunda frase, IMHO, deriva da restrição acima e encoraja as definições de função mais flexíveis sobre os apelidos simplistas.

    
por 19.12.2016 / 04:49

Tags