これら2つの方法が同じかどうかを知りたいです。
最初:
#!/bin/bash
if [ -x $FILE ]
then
echo "You have execution permission to a "$FILE""
else
echo "You don't have execution permission to a "$FILE""
fi
第二:
#!/bin/bash
[ -x $FILE ] && echo "You have execution permission to a "$FILE"" || echo "You don't have execution permission to a "$FILE""
答え1
これらの構造は通常同じではありませんが、この場合は同じです。その理由は、echo
終了コードが常にゼロであるためです。 0より大きいコードで終了できるコマンドの場合、「他の分岐」も実行されます。if
この場合は不可能です。