空でないディレクトリを持つ if-else

空でないディレクトリを持つ if-else

bash スクリプトで github から何かをインストールしたいのですが、フォルダーが存在するかどうかを確認しようとしています。

BLUE "Installing LS_COLORS..."

if [ ! -d "~/opt/LS_COLORS" ]

then
        git clone https://github.com/trapd00r/LS_COLORS.git ~/opt/LS_COLORS && cd ~/opt/LS_COLORS
        cat lscolors.sh >> ~/.bashrc
        source ~/.bashrc
else

        GREEN "LS_COLORS already installed"

fi

問題は、LS_COLORS ディレクトリが空にならず、これが適切に機能していないことです。else 部分に入ることができません。

答え1

パスが正しくなかったようです。すべての場所にフルパスを追加しました:

BLUE "Installing LS_COLORS..."
if [ ! -d "/home/torabi12/opt/LS_COLORS/" ]
then
      git clone https://github.com/trapd00r/LS_COLORS.git /home/torabi12/opt/LS_COLORS
      cat /home/torabi12/opt/LS_COLORS/lscolors.sh >> ~/.bashrc
      source ~/.bashrc
else
      GREEN "LS_COLORS already installed"
fi

そして今は動作しています。すべての返信に感謝します。

関連情報