Exibir a definição atual da função shell


11

Portanto, estou editando o bashrc constantemente e tenho um terminal aberto com uma definição de função funcional, embora o bashrc tenha sido atualizado com uma definição de função incorreta. (Como a definição não muda até que eu forneça o bashrc atualizado) Como posso procurar a definição da função de trabalho nesse caso? Por exemplo, se eu digitar:

alias function_name

Eu posso ver qual é a definição para esse alias. Existe um comando semelhante para a função? Caso contrário, existe um comando para emitir o bashrc inteiro que o terminal atual está usando?

Respostas:


18
typeset -f function

exibe a definição atual da função indicada. Ele funciona em ksh (de onde se originou), bash e zsh. (NB em zsh, type -f, which, functionse whence -fmostram também a definição de função.)


Você também pode usar whence -cvno zsh. A -vopção é informar se não existe um apelido ou função (ou executável em você PATH). Se você o usa muito (como eu), pode usar o alias para um comando de uma palavra.
Emanuel Berg
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.