【发布时间】:2016-06-29 10:41:00
【问题描述】:
我正在通过一个主父脚本运行一堆脚本。我在父脚本中添加了日志记录代码,如下所示:
exec 3>&1 4>&2
trap 'exec 2>&4 1>&3' 0 1 2 3
exec 1>logFileName 2>&1
这会为所有子脚本生成日志。我想跳过某个特定脚本的日志生成,因为它的日志有时会非常繁重。
有没有办法做到这一点?非常感谢!
我的父脚本如下所示:
mkdir -p $scriptFolder/log
logFile="$scriptFolder/log/$(echo "$4" | tr -d '\n\r')_log_ImportMain_$dateTime.log"
exec 3>&1 4>&2
trap 'exec 2>&4 1>&3' 0 1 2 3
exec 1>$logFile 2>&1
source $scriptFolder/shellscripts/1.copyFilesFromFTP.sh
source $scriptFolder/shellscripts/2.import.sh
source $scriptFolder/shellscripts/3.export.sh
source $scriptFolder/shellscripts/4.copyFilesToFTP.sh
我想跳过 3.export.sh 的日志记录,有没有办法做到这一点?
【问题讨论】:
-
您显示的代码并未告诉我们您如何运行这些脚本或如何生成它们的日志。如果这是一个编排脚本,它将所有其他脚本作为子进程单独运行,请丢弃您不希望输出的标准错误(和/或标准输出)。
-
你列举的
trap信号真的很奇怪。你想在这里完成什么? -
我有一个父脚本,它只是调用所有子脚本。上面的代码用于生成日志。在调用子脚本之前,我在父脚本中有这个日志代码。我只想排除一个子脚本的日志生成,因为它的日志很重,我只想要一个用于整个过程的日志文件。
-
您正在重申问题中已经存在的内容,而不是澄清任何内容。当我们不得不猜测您的实际代码是什么样子时,这里的赏金并没有多大帮助。请edit您的问题向我们展示您在需要帮助的实际代码中正在做什么。
-
我已经更新了问题。