example.com というURLをGETしたときに
{"status":"OK","message":"Hello Guillaume"}
というレスポンスが帰ってくると仮定します。
hoge=$(curl -X GET example.com) $ echo hoge {"status":"OK","message":"Hello Guillaume"}
この際に、hogeという変数に格納し、
Hello Guillaume
という文字列が帰ってきているか検証するシェルスクリプトを実装したいです。
次のように文字列のマッチをやろうとしても、
hoge =~ "Hello Guillaume"
{"status":"OK: command not found
というエラーが発生するため、上手く実装できません。
どのようにすれば良いでしょうか?
宜しくお願いします。
http://stackoverflow.com/questions/229551/string-contains-in-bash
追記
実際のURLはプライベートAPIのためご共有できませんため、以下のようなケース
で good になるようにさせたいです。
#!/bin/sh hoge='OK' if [ $hoge == *"OK"* ]; then echo "good" else echo "bad" fi
↑hoge.sh
実行
sh ./hoge.sh
echo $0 => bash bashでやっているのですが、ローカル環境(mac)の場合は、うまくいきました。 ただ、AWSのインスタンス(amazon linux)の場合はうまくいきません。。。