[devel] bash vs. ash

Vladislav Zavjalov slazav at altlinux.org
Tue Sep 29 09:19:16 UTC 2009


On Tue, Sep 29, 2009 at 03:07:31PM +0600, Andrey Rahmatullin wrote:
> On Tue, Sep 29, 2009 at 01:03:07PM +0400, Stanislav Ievlev wrote:
> > Хотелось бы узнать: какие есть препятствия для того чтобы поступить
> > как Debian - залинковать sh на ash и оставить bash только для
> > любителей башизмов?
> Отсутствие checkbashisms(1)

Я б, конечно, тоже, сделал sh->ash. Но совершенно непонятно же, кто и
где разломается.

Наверное, все-таки надо придумать более плавные переходные мероприятия.
Собрать список несовместимостей на wiki, придумать тесты ("у вас тут ${a//}, а в
заголовке /bin/sh!"), может вообще настоятельно рекомендовать в
заголовке всегда указывать явно ash/bash...

Я уже тут многим хвастался драматическим произведением на тему
совместимости ash и bash. Со счастливым концом :)

Надо было мне напечатать непечатное, и произошел у bash и ash такой
примерно диалог:

# ash -c 'echo "\117\113"'
OK
# bash -c 'echo "\117\113"'
\117\113

# bash -c "echo $'\117\113'"
OK
# ash -c "echo $'\117\113'"
$OK

$ ash -c "echo '\117\113'"
OK
$ bash -c "echo '\117\113'"
\117\113

# bash -c 'echo -e "\0117\0113"'
OK
# ash -c 'echo -e "\0117\0113"'
-e OK

# bash -c "echo $'\x4F\x4B'"
OK
# ash -c "echo $'\x4F\x4B'"
$\x4F\x4B

...

# bash -c 'printf "\117\113\n"'
OK
# ash -c 'printf "\117\113\n"'
OK



More information about the Devel mailing list