失敗するように見える単純なコードブロックがあり、その理由は100%不明です。
if ! -h /usr/sbin/gitploy; then
curl https://raw.githubusercontent.com/jeremyBass/gitploy/master/gitploy | sudo sh -s -- install
[ -h /usr/sbin/gitploy ] || echoerr "gitploy failed install"
else
gitploy gitploy_update
fi
失敗しますが、もしそうするなら
[ -h /usr/sbin/gitploy ] || echoerr "gitploy failed install"
それ自体でうまく動作します。私は簡単な理由があると確信しています。どんなアイデアがありますか?
答え1
これにより、nested if
ブロックを再作成する必要があります。たとえば、次のようになります。
if [ ! -h /usr/sbin/gitploy ]; then
curl https://raw.githubusercontent.com/jeremyBass/gitploy/master/gitploy | sudo sh -s -- install
[ -h /usr/sbin/gitploy ] || echoerr "gitploy failed install"
else
gitploy gitploy_update
fi