kshで文字列を比較する方法

kshで文字列を比較する方法

タスクの結果を確認し、それに対してアクションを実行したいと思いますFAILED

まず、アプリケーションログファイル(最も最近処理されたファイル($processedfilename))から行の最後の単語を検索します。

check1=$(grep "$processedfilename" "$logfile" | grep "anotherword" | \
    grep "FAILED" | tail -1 | awk '{print $NF}')

これは[FAILED]

今、結果を確認したいと思います。

if [ $check1 -eq "[[FAILED]" ] 
then

または

if [ $check1 -eq "\[FAILED]" ] 
then

いつも算術構文エラー

確認する正しい構文は何ですか[FAILED]

ベストアンサー1

変数は常に二重引用符で引用する必要があります。そして=文字列は同じでなければなりません。だから:

if [ "$check1" = "[FAILED]" ]; then

おすすめ記事