kjo*_*kjo 16 bash zsh shell-script function
有没有办法测试是否存在同时适用于bash
和的shell 函数zsh
?
Sté*_*las 23
如果您想通过名称检查当前定义的(或至少可能标记为自动加载的)函数foo
,无论内置/可执行文件/关键字/别名是否也可以通过该名称使用,您可以执行以下操作:
if typeset -f foo > /dev/null; then
echo there is a foo function
fi
Run Code Online (Sandbox Code Playgroud)
但请注意,如果还调用了关键字或别名foo
,它将优先于函数(未引用时)。
以上应该适用于ksh
(它来自哪里),zsh
并且bash
.