そのため、私が書いたサイトをカールさせて文字列を返すスクリプトを書いています。ファイル内に保存されている値を比較するために使用しています。一致する値に対して条件ステートメントが true を返すのに問題があります。
ここに私のbashコードのスニペットがあります
var1=$(curl -s -w %{http_code}\\n www.somesite.com)
var2=$(cat somefile)
if [[ "$var1" = "$var2" ]]; then
echo "TRUE"
else
echo "FALSE"
fi
私は両方の文字列を手動で調べましたが、それらは同一のようです。適用可能なすべてのオプションを使用して wc を実行しました。両方の値をコピーしてメモ帳++に貼り付け、予想される文字列を検索したところ、両方の値が検索コマンドに一致したことがわかりました。
明らかに、手動で値を条件に入れると、true が返されるので、条件ステートメントではないことがわかります。
私の推測では、curl の最後にある種の隠し文字があると思います...('\r' または '\n' または私が知らない何か)...または、ファイルの最後に私が気付いていない可能性がありますの。これは、curl の出力とファイルの内容を比較しようとするときの既知の問題ですか?
これはばかげた質問かもしれませんが、私の人生では、条件の値をハードコーディングする代わりに、これらの文字列を動的に一致させることができないようです。
どんな提案も素晴らしいでしょう。ありがとう