如何显示 zsh 函数定义(如 bash“type myfunc”)?

2024-05-14

如何在 zsh 中显示函数的定义?type foo没有给出定义。

在bash中:

bash$ function foo() { echo hello; }

bash$ foo
hello

bash$ type foo
foo is a function
foo () 
{ 
    echo hello
}

In zsh:

zsh$ function foo() { echo hello; }

zsh$ foo
hello

zsh$ type foo
foo is a shell function

zsh 的习惯用法是whence, the -fflag 打印函数定义:

zsh$ whence -f foo
foo () {
    echo hello
}
zsh$

In zsh, type被定义为等价于whence -v,这样您就可以继续使用type,但你需要使用-f争论:

zsh$ type -f foo
foo () {
    echo hello
}
zsh$

最后,在 zsh 中which被定义为等价于whence -c- 打印结果csh-like格式,所以which foo将产生相同的结果。

man zshbuiltins对于这一切。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何显示 zsh 函数定义(如 bash“type myfunc”)? 的相关文章

随机推荐