首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使gofmt退出,退出状态为1,何时gofmt建议更改?

使gofmt退出,退出状态为1,何时gofmt建议更改?
EN

Stack Overflow用户
提问于 2019-05-03 18:12:33
回答 2查看 1.2K关注 0票数 3

我想将gofmt添加到CI/CD管道中。如果它产生变化,我希望gofmt退出,状态为1。

例如,如果我运行gofmt -s -l .,并且列出了一些文件。我想让它以1状态退出,当我运行echo $?的时候,它给我的状态是0,即使有一些文件列在gofmt的更改中。

我检查了文档,但找不到相应的命令行选项。有没有能做到这一点的bash hack?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-05-03 18:20:44

您只需通过检查wc -l的输出是否是非空来确保gofmt是否列出了多行输出,然后运行二进制false,它将退出代码设置为1,以调用shell,或者使用exit 1显式退出脚本。

代码语言:javascript
复制
if [ "$(gofmt -s -l . | wc -l)" -gt 0 ]; then
    exit 1
fi

当您说gofmt实际上返回$?作为0时,即使有列出的文件?,在这种情况下,您也可以简单地这样做

代码语言:javascript
复制
if gofmt -s -l . > /dev/null; then
    exit 1
fi

上面的if条件依赖于gofmt返回的退出代码,因为0将指示命令成功,条件将断言true。

票数 2
EN

Stack Overflow用户

发布于 2021-06-14 05:04:55

您可以使用

代码语言:javascript
复制
test -z $(gofmt -l .)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55967709

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档