• ベストアンサー

シェルスクリプトについて

シェルスクリプトを勉強しています。 hoge.txt内で"AAA"という文字列を"BBB"という文字列を検索し下記のような処理を行いたいです。  (1)AAA・BBBともにある場合  →スクリプトを続行  (2)AAA・BBBともにない場合  →スクリプトを停止  (3)AAAしかない場合  →BBBがありませんというメッセージを流す    (4)BBBしかない場合  →AAAなしでスクリプトを続行しますというメッセージを流す   シンプルなやり方でいいので上記のようなことを行いたい場合、どのようにスクリプトを書けばいいのか教えてください。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • trapezium
  • ベストアンサー率62% (276/442)
回答No.1

やり方は色々あるだろうけど case で振り分けてみたらどうでしょう。 grep 2回でちょっと無駄かもだが、例えばこんな感じ。 flag= grep -q AAA hoge.txt && flag=${flag}a grep -q BBB hoge.txt && flag=${flag}b case $flag in ab) ;; a) echo BBBがありません ;; b) echo AAAなしでスクリプトを続行します ;; *) exit ;; esac

satsusatsu1202
質問者

お礼

ありがとうございます!! 無事やりたいことが出来ました。 教えていただきありがとうございます!!

関連するQ&A