• ベストアンサー

シェルスクリプト構文で「もしファイルが存在しなかったら」を表すには?

シェルスクリプトのif文で「存在しなかったらthen節へ」の表現方法を伺っても宜しいでしょうか? 現状「存在するならthen節へ」を使い下のようにしています。 if [ -e XXXXX ]; then # XXXXXが存在しなかったら echo # 存在時は処理なし。が、構文不明の為、無意味なechoを入れてる else # 存在しない時の処理がここにある fi 上を自然な文法に修正したいです。以上どうか宜しくお願い致します。

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

  • ベストアンサー
  • Ceren
  • ベストアンサー率49% (90/183)
回答No.1

if [ ! -e XXXXX ]; then でうまくいきませんか? あと test(1) のmanpageも参考に。

simple0123
質問者

お礼

なるほど、C言語系のように!でいいのですね。有難うございます。

その他の回答 (1)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

使うシェルとか「ファイルがないときの処理」にもよりますが, [ -e XXX ] || 処理 と || で逃げる手もありますね. あと, 「then のところに入れる処理がない」場合には if [ -e XXX ]; then : else 何か fi のように : を使うのが普通だと思います.

simple0123
質問者

お礼

捕捉情報、誠に有難うございます。今回は最も単純な方法である!を使う事で解決しました。

関連するQ&A