Dmitry Alexandrov -> debian-russian@lists.debian.org  @ Thu, 01 Dec 2016 
14:17:22 +0300:

 >>  >>  >> Заблуждаешься ты в основном в том, что ожидаешь от шеллов соблюдения
 >>  >>  >> стандартов. В команде zsh на этом изрядно заморочены, в команде 
 >> dash -
 >>  >>  >> так себе, они скорее делают свой шелл таким, чтобы то, что он 
 >> понимает,
 >>  >>  >> без сюрпризов работало в любом другом шелле, делающем вид, что он
 >>  >>  >> понимает язык /bin/sh. А bash гарантированно не соблюдает POSIX.
 >>  >>
 >>  >>  > Последнее на первый взгляд звучит как чушь.  Можно источник?
 >>  >>
 >>  >> bash
 >>
 >>  > И пара примеров, конечно, без труда найдется (в позиксном режиме,
 >>  > который при запуске за «sh», разумеется)?
 >>
 >> Сходу нет. Он слишком крив для того, чтобы я им пользовался. Что самое
 >> неприятное, ВНЕЗАПНО крив.

 > Ну а на это-то заявление пара примеров найдется сходу?

Приходите лет на 10 раньше, когда я пытался еще писать на баше и ходил
по этим граблям.

 >> Но в принципе, уже достаточно полистать историю правок к скриптам
 >> пакетов в дебиане за период, когда шла волна борьбы за работу скриптов в
 >> dash. То и дело всплывала вычистка башизмов из скриптов, начинающихся на
 >> #!/bin/sh.

 > Простите, а это здесь каким боком?

Элементарно, Ватсон. Понимание башем башизма в режиме совместимости с
/bin/sh не является POSIX-совместимым. Потому что не позволяет заменить
/bin/sh на другой POSIX-совместимый для выполнения этого скрипта.

Ответить