Ось якийсь код, який робить щось інше в POSIX sh та Bash:
hello &> world
Чи це для вас "недійсне", я не знаю.
У Bash, він перенаправляє як стандартний висновок і стандартну помилку з helloв файл world. У POSIX shвін працює helloу фоновому режимі, а потім робить порожнє перенаправлення на world, обрізаючи його (тобто воно трактується як& > ).
Існує маса інших випадків, коли розширення Bash роблять свою справу під час запуску bashта матимуть різний ефект у чистому POSIX sh. Наприклад, розширення дужок - це ще одне, і воно теж працює те саме в режимі POSIX Баша, і ні.
Що стосується статичних синтаксичних помилок, у Bash є як зарезервовані слова (наприклад, так [[і time), не вказані POSIX, такі, що [[ xє дійсним кодом оболонки POSIX, але помилка синтаксису Bash та історія різних помилок несумісності POSIX, які можуть спричинити помилки синтаксису, наприклад, з цього питання :
x=$(cat <<'EOF'
`
EOF
)
bash: line 2: unexpected EOF while looking for matching ``'
bash: line 5: syntax error: unexpected end of file
Синтаксичні помилки - це досить небезпечне визначення "недійсного" за будь-яких обставин, де це має значення, але воно є.