[Comm] sh - bash
Pavel Usischev
=?iso-8859-1?q?usischev_=CE=C1_gmail=2Ecom?=
Вс Окт 15 02:50:01 MSD 2006
Artem Zolochevskiy пишет:
> Всё, что я когда-то уяснил, это то, что сперва был sh (который чего-то там
> не умел) а затем стал bash, который сейчас повсеместно и используется и
> чего-то там умеет, чего не умел sh
Ну это не то чтобы совсем так :) Совместимы с sh, насколько я знаю, все
используемые сейчас шеллы. А это не только bash, но и стандартный во
FreeBSD tcsh, и очень мощный zsh.
> Собственно вопрос относительно написания скриптов
> Отчего же тогда вижу везде #!/bin/sh (в стартовых сценариях итп) - если этот
> sh такой старый и неумека?
Как раз для переносимости скрипта. В ALT /bin/sh -- это особый вариант
bash, в других системах это вполне может быть другой шелл, а bash вообще
может отсутствовать.
> Ну и, если можно, пример можете привести где употребление
> #!/bin/sh или #!/bin/bash может сказаться на работоспособности скрипта.
> Т.е. какая такая фича может быть в скрипте, что при использовании #!/bin/sh
> он работать не будет.
Об отличиях bash от изначального Bourne Shell можно почитать, дав команду:
info bash 'Major Differences From The Bourne Shell'
Однако, насколько я понял, в ALT /bin/sh будет вести себя так же, как
/bin/bash (возможно, я просто как-то не так проверял).
--
С уважением,
Павел Усищев
Подробная информация о списке рассылки community