Параметр set -e
не действует в некоторых ситуациях, и это стандартное поведение и переносимое в оболочку POSIX.
Неудачная команда является частью конвейера:
false | true; echo printed
будет печатать printed
.
И только провал самого трубопровода рассматривается:
true | false; echo 'not printed'
ничего не напечатает.
Команда failed запускается в составном списке после зарезервированного слова while
, till
, if
, elif
конвейера, начинающегося с !
зарезервированное слово, или любую команду как часть &&
или || Список
, кроме последнего:
false || true; echo printed
Последняя команда по-прежнему не выполняет ошибку set -e
:
true && false; echo 'not printed'
Подоболочка завершается ошибкой в составной команде:
(false; echo 'not printed') | cat -; echo printed
Нет. Encfs и Ecryptfs используют разные форматы. Единственный способ конвертировать между ними - расшифровать один и зашифровать другой.