(GNU bash,版本 4.2.50(1)-release (powerpc-ibm-aix6.1.2.0))
(
echo "a"
echo "b"
echo "c"
)| sendmail -F "Sender" [email protected]
这在 .sh 文件中运行,并且日志(使用 -x 选项运行时)显示 sendmail
之前的 .sh 文件echo "c"
。
我正在尝试调试 sendmail 偶尔失败的原因。由于 subshell 和 sendmail 并行运行,sendmail 是否有可能不等待整个 subshell 结束,而只使用部分输出,直到echo b
继续发送不完整的电子邮件然后失败?(虽然 stderr 中没有错误消息,但对于某些处决,电子邮件只是没有神秘地出现在我的收件箱中)
有关更多上下文:我上面写的回显命令只是占位符,我实际上是在尝试准备一封电子邮件,如此答案https://stackoverflow.com/a/3335377/11521011并将其通过管道发送到 sendmail