No zsh 5.3 ou superior,
type _precmd_function_domore
deve retornar algo como
_precmd_function_domore is a shell function from /usr/local/etc/zshrc.d/80-PetaLinux
Com zsh
5,4 ou acima, você também pode usar:
echo $functions_source[_precmd_function_domore]
Quando você executa zsh
com a opção xtrace
(como com zsh -x
), ele grava informações de depuração no stderr que mostra todos os comandos que executa (não as definições de função). Você pode modificar a variável $PS4
(a variável de prompt usada para a saída xtrace
, consulte info zsh PS4
) para fornecer mais informações, como para cada comando executado, de qual arquivo e em cada linha o comando foi lido de.
PS4='+%x:%I> ' zsh -x 2> >(grep precmd_func)
Executaria uma nova instância do shell zsh interactive, com o stderr filtrado pelo grep para mostrar as linhas que contêm precmd_func
.
Ou com zsh
, você pode invocar essa função _precmd_function_domore
em xtrace
e com %x:%I
em $PS4
para ver onde a definição da função foi lida:
$ grep -n precmd ~/.zshrc
192:precmd_foo() echo foo
$ (PS4='+%x:%I> '; set -x; precmd_foo)
+zsh:2> precmd_foo
+/home/stephane/.zshrc:194> echo foo
foo
(note o número da linha off-by-two aqui).