检查变量是否在if语句中包含特定字符串

时间:2016-08-31 20:07:08

标签: sh

我正在尝试检查if语句中的变量内是否存在字符串。

if  [ -n $(echo "$RUN" | grep "Done running command.") ]; then

我知道这可以通过创建另一个变量然后检查它是否为空来完成,但我试图看看它是否可以以更简化的方式完成。

CHK=$(echo "$RUN" | grep "Done running command.")
if  [ -n "$CHK" ]; then

对此有任何煽动都会有所帮助。

1 个答案:

答案 0 :(得分:1)

您可以使用正则表达式匹配,这将保存Dim fso, myTxtFile Set fso = CreateObject("Scripting.FileSystemObject") Set myTxtFile = fso.OpenTextFile("mytxt.txt") Dim str, myTxtArr txtContents myTxtFile.ReadAll myTxtFile.close myTxtArr = Split(txtContents, vbNewLine) For each line in myTxtArr tLine = Split(tLine, ",") Trim(tLine(1)) If tLine(1) = "anotherstring" Then MsgBox "match" End If Next 命令的产生,以获得更好的性能和bash集成:

grep

(请注意,如果点带有引号,则它将作为普通点,而不是通配符:对于我们的示例而言,这是最好的)

试验:

if [[ "$RUN" =~ "Done running command." ]] ; then echo OK ; fi