Linux bashのif文

Linux bashのif文

ifステートメントで2つの文字列を比較しようとしています。しかし、プログラムが毎回最初の条件を通過するため、比較が正しく実行されないようです。

#!/bin/bash
switch=$(ssh 192.168.14.10 egrep somefile /tmp/tmpfile.txt)
if [ "$switch" == "tmp" ]; then
     echo "expected output"
else
     echo "unexpected output"
fi

毎回「期待される出力」が達成される。最初の条件を「!=」に変更しようとしましたが、まだ最初のステートメントに到達します。

ベストアンサー1

あなたの比較は正確で慣用的なBashコードです。

echo "switch='$switch'"以前に挿入を試みif、毎回変数の内容が何であるかを確認してください。

おすすめ記事