コンソール出力に基づいてダイアログボックスを作成する

コンソール出力に基づいてダイアログボックスを作成する

コンソールウィンドウに表示される特定の文字列に基づいてダイアログボックスを表示するために、zenityやダイアログボックスなどを使用したいですか?

背景:Tomcat 7 catalina.shを呼び出すラッパーシェルスクリプトを作成しました。 「Server selected in XXXXXXms」がコンソールに出力されると、OKメッセージとともに情報ボックスを表示したいと思います。 catalina.shは変更や上書きが簡単なので編集したくありません。したがって、ラッパーシェルスクリプトでこれを行う必要があります。

上記の内容は可能ですか?

ありがとう

答え1

完全にテストされていません:

/path/to/catalina.sh 2>&1 | while IFS= read -r line; do
    echo "$line"
    if [[ $line == *"Server startup in"* ]]; then
        dialog --msgbox "$message" 10 40
    fi
done

関連情報