我想将以下内容翻译如下:
使用以下命令可以获得所需的结果并将输出镜像到标准输出,对结果进行零长度检查:
git status --short && (git status --short | xargs -Istr test -z str)
转换为以下代码行:
git status --short | tee >(xargs -Istr test -z str)
但是这种方式总是返回tee的退出状态码(始终为零)。是否有一种优雅的方法来获取替代进程的退出代码?
【编辑】
目前我使用以下命令,它可以避免运行相同的命令两次,但似乎还需要更好的解决方法:
OUT=$(git status --short) && echo "${OUT}" && test -z "${OUT}"
使用以下命令可以获得所需的结果并将输出镜像到标准输出,对结果进行零长度检查:
git status --short && (git status --short | xargs -Istr test -z str)
转换为以下代码行:
git status --short | tee >(xargs -Istr test -z str)
但是这种方式总是返回tee的退出状态码(始终为零)。是否有一种优雅的方法来获取替代进程的退出代码?
【编辑】
目前我使用以下命令,它可以避免运行相同的命令两次,但似乎还需要更好的解决方法:
OUT=$(git status --short) && echo "${OUT}" && test -z "${OUT}"