检查终端输出是否与我的字符串匹配

时间:2016-08-09 14:21:47

标签: linux bash shell

我试图找到我是否安装了正确的leptonica版本。我运行tesseract -v,输出就是这个:

tesseract 3.04.01

 leptonica-1.73

  libgif 5.1.2 : libjpeg 8d (libjpeg-turbo 1.4.2) : libpng 1.2.54 : libtiff 4.0.6 : zlib 1.2.8 : libwebp 0.4.4 : libopenjp2 2.1.0

它在stderr上写的输出,所以我的脚本看起来像这样:

if tesseract -v 2> >(head -n2 | tail -n1) | grep -q 'leptonica-1-73' ; then
    echo "matched"
else
    echo "not found"
fi

当我运行脚本时,它会显示:

Syntax error: redirection unexpected.

知道为什么吗?

1 个答案:

答案 0 :(得分:3)

使用

tesseract -v 2>&1 | head -n2 | tail -n1

而不是

tesseract -v 2> >(head -n2 | tail -n1)
相关问题