chi*_*.de 5 bash shell-script function
简而言之,请执行以下操作:
-bash$ function tt
{
echo $0;
}
-bash$ tt
Run Code Online (Sandbox Code Playgroud)
$0将返回-bash,但如何获取调用的函数名称,即tt在此示例中?
cuo*_*glm 11
在 中bash,使用FUNCNAME数组:
tt() {
printf '%s\n' "$FUNCNAME"
}
Run Code Online (Sandbox Code Playgroud)
通过一些ksh实现:
tt() { printf '%s\n' "$0"; }
Run Code Online (Sandbox Code Playgroud)
在ksh93:
tt() { printf '%s\n' "${.sh.fun}"; }
Run Code Online (Sandbox Code Playgroud)
从ksh93d上面开始,您也可以使用$0inside function 来获取函数名称,但必须使用function name { ...; }form定义函数。
在 中zsh,您可以使用funcstack数组:
tt() { print -rl -- $funcstack[1]; }
Run Code Online (Sandbox Code Playgroud)
或$0内部函数。
在fish:
function tt
printf '%s\n' "$_"
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7070 次 |
| 最近记录: |