gpt4 book ai didi

bash - 管道命令输出到 tee 但也保存命令的退出代码

转载 作者:行者123 更新时间:2023-11-29 08:38:15 25 4
gpt4 key购买 nike

<分区>

我有一个 shell 脚本,我在其中包装了一个命令 (mvn clean install),以将输出重定向到日志文件。

#!/bin/bash
...
mvn clean install $@ | tee $logfile
echo $? # Does not show the return code of mvn clean install

现在,如果 mvn clean install 因错误而失败,我希望我的包装器 shell 脚本也因该错误而失败。但是由于我将所有输出都传输到 tee,我无法访问 mvn clean install 的返回码,所以当我之后访问 $? 时,它始终为 0(因为开球成功)。

我试着让命令将错误输出写入一个单独的文件并在之后检查,但是 mvn 的错误输出总是空的(似乎它只写入到 stdout)。

如何保留 mvn clean install 的返回码,但仍将输出通过管道传输到日志文件?

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com