【发布时间】:2026-02-17 05:40:01
【问题描述】:
我有一个 bash 脚本,其中有几个函数都在 1 个函数中调用。如何将所有功能的所有输出通过管道传输到主要功能?我还将使用 tee 将输出显示到术语和日志文件。
func 1
func 2
func 3
func 1
func 4
func 2
func 3
call func 4 # i want to grab it here
【问题讨论】:
-
我很难理解这个问题。无论涉及多少 shell 函数或实际命令,输出都会转到标准输出或标准错误。您已经可以将它从“主要”引导到管道中。将 shell 函数的输出“输送到主函数”甚至意味着什么?
-
好吧,我使用 tee 来记录输出并按术语显示。问题是,其中一个函数调用了一个外部脚本,并且没有记录任何输出。我能够记录它的唯一方法是,如果我在对脚本的特定调用中直接输出并发送输出。如果我尝试在这两个位置记录它,则文件被锁定并且无法正常工作。