Exibe o corpo da função no Bash

12

Eu configurei várias funções no meu arquivo .bashrc . Gostaria de apenas exibir o código real da função e não executá-lo, para se referir rapidamente a algo.

Existe alguma maneira, poderíamos ver a definição da função?

    
por mtk 27.12.2012 / 09:33

3 respostas

12

A opção declare do -f incorporado faz isso:

bash-4.2$ declare -f apropos1
apropos1 () 
{ 
    apropos "$@" | grep ' (1.*) '
}

Eu uso type para esse propósito, é mais curto para digitar;)

bash-4.2$ type apropos1
apropos1 is a function
apropos1 () 
{ 
    apropos "$@" | grep ' (1.*) '
}
    
por 27.12.2012 / 09:38
6

Você pode usar o comando type para fazer isso.

type yourfunc imprimirá a função em STDOUT. Como man type diz,

The type utility shall indicate how each argument would be interpreted if used as a command name.
    
por 27.12.2012 / 09:38
0

para uso de informações dos comandos incorporados:

help [-s|-d] COMMAND1 COMMAND2 ....

por exemplo:

help help alias

Para informações sobre todos eles, por exemplo:

help -s '' 
    
por 21.02.2014 / 06:16

Tags