gpt4 book ai didi

bash - 如果命令输出包含某个字符串,我该如何测试(在一行中)?

转载 作者:太空宇宙 更新时间:2023-11-04 12:14:10 26 4
gpt4 key购买 nike

在一行 bash 中,如何在 /usr/local/bin/monit --version 的输出时返回退出状态 0不完全包含 5.5退出状态为 1?

最佳答案

! /usr/local/bin/monit --version | grep -q 5.5

(grep 如果找到匹配则返回退出状态 0,否则返回 1。-q 选项“quiet”告诉它不要打印它找到的任何匹配;换句话说,它告诉 grep 你唯一想要的就是它的返回值。开头的 ! 反转了整个管道。)

编辑添加:或者,如果您想在“纯 Bash”中执行此操作(而不是调用 grep),您可以编写:

[[ $(/usr/local/bin/monit --version) != *5.5* ]]

([[...]]§3.2.4.2 "Conditional Constructs" of the Bash Reference Manual 中解释。*5.5* 就像在 fileglobs 中一样:零个或多个字符,加上 5.5,加上零个或多个字符。)

关于bash - 如果命令输出包含某个字符串,我该如何测试(在一行中)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47887541/

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