![列出“源”脚本中定义的函数?](https://linux22.com/image/63427/%E5%88%97%E5%87%BA%E2%80%9C%E6%BA%90%E2%80%9D%E8%84%9A%E6%9C%AC%E4%B8%AD%E5%AE%9A%E4%B9%89%E7%9A%84%E5%87%BD%E6%95%B0%EF%BC%9F.png)
我有一个非常简单的 bash 脚本build.sh
,它定义(但不调用)函数集合,例如
#! /bin/bash
create_iptables_log() {
# do stuff
}
apply_iptables_rules() {
# do stuff
}
然后获取脚本source build.sh
,并从命令提示符运行这些函数。
如何获取脚本定义的函数列表?
我目前正在 grep 文件,例如:
grep -v '^#' build.sh | grep function
但我想知道是否有一种“bash”方式来列出 bash 环境中存在的函数。
答案1
该命令typeset -f
列出了函数定义。 (至少bash
和支持ksh
。)awk
如果您想对数据进行后处理,例如仅提取函数名称,请使用。