シャルスクリプトでファイル・ディレクトリの有無の確認方法「if文」

2021-06-22

if文で、ファイルがあるかないかを確認するシェルスクリプト

ファイルやディレクトリの有るか無いかを確認して、無ければディレクトリを作ったりする事は多いと思います。
ディレクトリが有るか無いかの確認は、if文を利用すれば確認できます

ディレクトリの判断は、【-f (ファイル名)】 or  【-e (ファイル名)】でファイルかどうかチェックできます

・【-f (ファイル名)】の場合

#!/bin/bash

FILENAME=/var/tmp/hoge.txt

# $FILENAME(/var/tmp/hoge.txt)があるか確認
if [ -f $FILENAME ] ; then
  echo "$FILENAME OK."
else
  echo "$FILENAME NG"
fi

・【-e (ファイル名)】の場合

#!/bin/bash

FILENAME=/var/tmp/hoge.txt

# $FILENAME(/var/tmp/hoge.txt)があるか確認
if [ -e $FILENAME ] ; then
  echo "$FILENAME OK."
else
  echo "$FILENAME NG"
fi

if文で、ディレクトリがあるかないかを確認するシェルスクリプト

if文を利用してディレクトリの有無を判断しているシェルスクリプトのサンプルです。

ディレクトリの判断は、【-d (ディレクトリ名)】 でディレクトリかどうかチェックできます

#!/bin/bash

DIRNAME=/var/tmp/hoge/

#ディレクトリ($DIRNAME) をチェック 
if [ -d $DIRNAME ] ; then
  echo "$DIRNAME OK."
else
  echo "$DIRNAME NG"
fi

if文で、ディレクトリが有無を確認して、ディレクトリを作成するシェルスクリプト

if文を利用してディレクトリの有無を判断して、無ければディレクトリを作成するシェルスクリプトのサンプルです

#!/bin/bash

DIRNAME=/var/tmp/hoge/

#ディレクトリ($DIRNAME) が無ければディレクトリを作成する
if [ ! -d $DIRNAME ] ; then
# ディレクトリが無ければディレクトリを作ります
  echo "$DIRNAME NG"
  mkdir -p $DIRNAME
fi