是否可以覆盖 shell 函数并保留对原始函数的引用?
f() { echo original; }
f() { echo wrapper; ...; }
f
这个的输出应该是:
wrapper
original
这可能以半便携式方式吗?
基本原理:我正在尝试通过将部分程序替换为将调用记录到日志文件中的 shell 函数来测试我的程序。只要我只包装命令和内置命令,并且我不介意不分青红皂白的日志记录,它就可以正常工作。现在我想通过只记录每个测试中有趣的部分来使测试套件更易于维护。
所以假设我的程序包括
f
g
h
其中f
, g
,h
都是 shell 函数,我想跟踪 just 的执行情况g
。