Сделайте такif [ -d 1 ] && [ -d 8 ] && [ -d 4 ]
редактировать :игнорировать, правильный ответ ниже.
Ваша основная проблема заключается в том, что вы предполагаете, что [
— это такие же круглые скобки, и что вы можете их вкладывать друг в друга. Это неправда. Выражение [... ]
совпадает с test...
.
Утилита test
имеет возможность комбинировать множественный тест с -a
для and
и с -o
для or
. Подробнее см. в руководстве.
Таким образом, вы можете выписать свой чек как test -d 1 -a d 4 -a -d 8
или [ -d 1 -a d 4 -a -d 8 ]