Red Gremlin писал: ↑31.05.2023 11:37
Это "стандарт" де-факто мёртв, и довольно давно.
Этому стандарту соответствует большинство реализаций. Для обеспечения переносимости большего не нужно.
Red Gremlin писал: ↑31.05.2023 11:37
для соответствия этому "стандарту" надо отказаться от всего хорошего, что появилось за последние 20 лет.
А 20 лет назад что, ничего «сложнее хелловорлда» не писали?
Red Gremlin писал: ↑31.05.2023 11:37
Ну и главное — одно из основных применений shell-скриптов — автоматизация административных задач, которые в значительной части не переносимы по причине системо-зависимости.
Одно, но не единственное. Есть среди них как минимум одно, где шеллу нет альтернативы: написание максимально переносимого как между ОС, так и между аппаратными платформами кода.
Red Gremlin писал: ↑31.05.2023 11:37
Но в большинстве линуксов в дефолтной установке есть баш, в MacOS в дефолтной установке есть баш, в Солярисе в дефолтной установке есть баш.
А в FreeBSD — нет. И насчёт «большинства линуксов» — спорно, в минимальной базовой системе его зачастую нет (точно есть в редхатообразных, но не в дебианообразных и не в alpine). В макоси дефолтный баш древней версии, насколько я помню. Насчёт соляриса не уверен: к счастью, давно с ним не имел дела. Помню, что дефолтный шелл в нём сменили на ksh93 только в 11 версии, и вообще писать под него скрипты — исключительная боль. Тот случай, когда на стандарт нельзя полагаться, ни актуальный, ни какой-то старой версии. Там даже sed убогий.
Red Gremlin писал: ↑31.05.2023 11:37
Во многих других системах он доступен для установки, даже если не входит в дефолтную установку. Хочется переносимости — пиши на баше.
Не всегда есть возможность что-то установить. Иногда надо дать юзеру скрипт, который гарантированно будет у него работать без дополнительных телодвижений. А когда такая возможность есть — на фига вообще shell/bash? Существует куча куда более приятных языков.