ALT Linux Community general discussions
 help / color / mirror / Atom feed
* [Comm] sh - bash
@ 2006-10-14 21:57 Artem Zolochevskiy
  2006-10-14 22:27 ` Alexey Rusakov
  2006-10-14 22:50 ` Pavel Usischev
  0 siblings, 2 replies; 18+ messages in thread
From: Artem Zolochevskiy @ 2006-10-14 21:57 UTC (permalink / raw)
  To: community

hi all

Просветите

На пакет sh и bash описание одно и то же.
Всё, что я когда-то уяснил, это то, что сперва был sh (который чего-то там
не умел) а затем стал bash, который сейчас повсеместно и используется и
чего-то там умеет, чего не умел sh

Собственно вопрос относительно написания скриптов
Отчего же тогда вижу везде #!/bin/sh (в стартовых сценариях итп) - если этот
sh такой старый и неумека?

Ну и, если можно, пример можете привести где употребление
#!/bin/sh или #!/bin/bash может сказаться на работоспособности скрипта.
Т.е. какая такая фича может быть в скрипте, что при использовании #!/bin/sh
он работать не будет.

-- 
Artem Zolochevskiy
Kaliningrad, Russia
JID: az@jabber.org



^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [Comm] sh - bash
  2006-10-14 21:57 [Comm] sh - bash Artem Zolochevskiy
@ 2006-10-14 22:27 ` Alexey Rusakov
  2006-10-15  5:41   ` Artem Zolochevskiy
  2006-10-14 22:50 ` Pavel Usischev
  1 sibling, 1 reply; 18+ messages in thread
From: Alexey Rusakov @ 2006-10-14 22:27 UTC (permalink / raw)
  To: ALT Linux Community

Artem Zolochevskiy пишет:
> hi all
>
> Просветите
>
> На пакет sh и bash описание одно и то же.
> Всё, что я когда-то уяснил, это то, что сперва был sh (который чего-то там
> не умел) а затем стал bash, который сейчас повсеместно и используется и
> чего-то там умеет, чего не умел sh
>
> Собственно вопрос относительно написания скриптов
> Отчего же тогда вижу везде #!/bin/sh (в стартовых сценариях итп) - если этот
> sh такой старый и неумека?
>
> Ну и, если можно, пример можете привести где употребление
> #!/bin/sh или #!/bin/bash может сказаться на работоспособности скрипта.
> Т.е. какая такая фича может быть в скрипте, что при использовании #!/bin/sh
> он работать не будет.
>   
Насколько я понимаю, ситуация такая: вначале был Bourne shell, он же sh. 
sh есть на всех UNIX-системах, кроме тех, на которых используется Korn 
shell (ksh, соответственно). На Linux оригинальный sh если и есть, то 
встречается редко; вместо него используется Bourne Again shell (bash), 
который умеет в точности воспроизводить поведение предка. В современных 
системах sh - это тот же bash, но работающий в режиме совместимости с sh.
Отличия работы bash в режиме совместимости лучше всего почитать в man 
bash, основное отличие - в режиме совместимости bash строго следует 
POSIX (м-да, о том, что это значит, тоже лучше читать в man bash). Ну в 
общем, я думаю, вы поняли, какое сокращение я избегаю здесь употребить :)

-- 
  Alexey "Ktirf" Rusakov


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [Comm] sh - bash
  2006-10-14 21:57 [Comm] sh - bash Artem Zolochevskiy
  2006-10-14 22:27 ` Alexey Rusakov
@ 2006-10-14 22:50 ` Pavel Usischev
  2006-10-15  5:53   ` Artem Zolochevskiy
  2006-10-15 17:48   ` Michael Shigorin
  1 sibling, 2 replies; 18+ messages in thread
From: Pavel Usischev @ 2006-10-14 22:50 UTC (permalink / raw)
  To: ALT Linux Community

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 (возможно, я просто как-то не так проверял).

-- 
С уважением,
Павел Усищев


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [Comm] sh - bash
  2006-10-14 22:27 ` Alexey Rusakov
@ 2006-10-15  5:41   ` Artem Zolochevskiy
  2006-10-15  6:13     ` Alexey Rusakov
  2006-10-15  8:41     ` Andrey Rahmatullin
  0 siblings, 2 replies; 18+ messages in thread
From: Artem Zolochevskiy @ 2006-10-15  5:41 UTC (permalink / raw)
  To: community

Alexey Rusakov wrote:

> Насколько я понимаю, ситуация такая: вначале был Bourne shell, он же sh.
> sh есть на всех UNIX-системах, кроме тех, на которых используется Korn
> shell (ksh, соответственно). На Linux оригинальный sh если и есть, то
> встречается редко; вместо него используется Bourne Again shell (bash),
> который умеет в точности воспроизводить поведение предка. В современных
> системах sh - это тот же bash, но работающий в режиме совместимости с sh.
> Отличия работы bash в режиме совместимости лучше всего почитать в man
> bash, основное отличие - в режиме совместимости bash строго следует
> POSIX (м-да, о том, что это значит, тоже лучше читать в man bash). Ну в
> общем, я думаю, вы поняли, какое сокращение я избегаю здесь употребить :)

Да всё это понятно, доку читали...
Я по наивности предполагал, что #!/bin/sh используют для переносимости. Но
тогда непонятно отчего в скриптах в системе повсеместно #!/bin/sh если сам
этот альтовский sh скорее bash чем оригинальный старый sh, а соответственно
это явно _не_ для переносимости.

-- 
Artem Zolochevskiy
Kaliningrad, Russia
JID: az@jabber.org



^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [Comm] sh - bash
  2006-10-14 22:50 ` Pavel Usischev
@ 2006-10-15  5:53   ` Artem Zolochevskiy
  2006-10-15  5:57     ` Artem Zolochevskiy
                       ` (2 more replies)
  2006-10-15 17:48   ` Michael Shigorin
  1 sibling, 3 replies; 18+ messages in thread
From: Artem Zolochevskiy @ 2006-10-15  5:53 UTC (permalink / raw)
  To: community

Pavel Usischev wrote:

>> Собственно вопрос относительно написания скриптов
>> Отчего же тогда вижу везде #!/bin/sh (в стартовых сценариях итп) - если
>> этот sh такой старый и неумека?
> 
> Как раз для переносимости скрипта. В ALT /bin/sh -- это особый вариант
> bash, в других системах это вполне может быть другой шелл, а bash вообще
> может отсутствовать.

Так вот и я так думал, а получается, что нет. Ибо в альтовских скриптах
(благодаря тому, что в альт sh это тот же bash) повсеместно используются
фичи, кот в "оригинальном" sh не прокатят. Получается о совместимости тут
речи нет.
 
>> Ну и, если можно, пример можете привести где употребление
>> #!/bin/sh или #!/bin/bash может сказаться на работоспособности скрипта.
>> Т.е. какая такая фича может быть в скрипте, что при использовании
>> #!/bin/sh он работать не будет.
> 
> Об отличиях bash от изначального Bourne Shell можно почитать, дав команду:
> 
> info bash 'Major Differences From The Bourne Shell'

читали. собственно вопрос и возник от того что этих Differences не наблюдаю
(ну вернее частично)

> 
> Однако, насколько я понял, в ALT /bin/sh будет вести себя так же, как
> /bin/bash (возможно, я просто как-то не так проверял).
> 

вот здесь и засада.
конкретный пример:
bash:
[artem@alt ~]$ A=5
[artem@alt ~]$ B=6
[artem@alt ~]$ C=$(($A+$B))
[artem@alt ~]$ echo $C
11
[artem@alt ~]$

альтовский sh:
sh-3.1$ A=5
sh-3.1$ B=6
sh-3.1$ C=$(($A+$B))
sh-3.1$ echo $C
11
sh-3.1$

а по идее в sh это не должно прокатывать
heirloom-sh:
$ A=5
$ B=6
$ C=$(($A+$B))
syntax error: `C=$' unexpected
$ 


Вот и получается что использование #!/bin/sh в альте явно не для
совместимости.

-- 
Artem Zolochevskiy
Kaliningrad, Russia
JID: az@jabber.org



^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [Comm] sh - bash
  2006-10-15  5:53   ` Artem Zolochevskiy
@ 2006-10-15  5:57     ` Artem Zolochevskiy
  2006-10-15  7:26     ` Sergey Vlasov
  2006-10-15 17:52     ` Michael Shigorin
  2 siblings, 0 replies; 18+ messages in thread
From: Artem Zolochevskiy @ 2006-10-15  5:57 UTC (permalink / raw)
  To: community

Artem Zolochevskiy wrote:

 
> Вот и получается что использование #!/bin/sh в альте явно не для
> совместимости.

естественно под "совместимостью" подразумевал переносимость.

-- 
Artem Zolochevskiy
Kaliningrad, Russia
JID: az@jabber.org



^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [Comm] sh - bash
  2006-10-15  5:41   ` Artem Zolochevskiy
@ 2006-10-15  6:13     ` Alexey Rusakov
  2006-10-15  8:41     ` Andrey Rahmatullin
  1 sibling, 0 replies; 18+ messages in thread
From: Alexey Rusakov @ 2006-10-15  6:13 UTC (permalink / raw)
  To: ALT Linux Community

Artem Zolochevskiy пишет:
> Alexey Rusakov wrote:
>
>   
>> Насколько я понимаю, ситуация такая: вначале был Bourne shell, он же sh.
>> sh есть на всех UNIX-системах, кроме тех, на которых используется Korn
>> shell (ksh, соответственно). На Linux оригинальный sh если и есть, то
>> встречается редко; вместо него используется Bourne Again shell (bash),
>> который умеет в точности воспроизводить поведение предка. В современных
>> системах sh - это тот же bash, но работающий в режиме совместимости с sh.
>> Отличия работы bash в режиме совместимости лучше всего почитать в man
>> bash, основное отличие - в режиме совместимости bash строго следует
>> POSIX (м-да, о том, что это значит, тоже лучше читать в man bash). Ну в
>> общем, я думаю, вы поняли, какое сокращение я избегаю здесь употребить :)
>>     
> Да всё это понятно, доку читали...
> Я по наивности предполагал, что #!/bin/sh используют для переносимости. Но
> тогда непонятно отчего в скриптах в системе повсеместно #!/bin/sh если сам
> этот альтовский sh скорее bash чем оригинальный старый sh, а соответственно
> это явно _не_ для переносимости.
>   
Хорошо, пример из всё того же man bash: bash, запущенный как sh, не 
читает свои стартовые скрипты.

-- 
  Alexey "Ktirf" Rusakov


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [Comm] sh - bash
  2006-10-15  5:53   ` Artem Zolochevskiy
  2006-10-15  5:57     ` Artem Zolochevskiy
@ 2006-10-15  7:26     ` Sergey Vlasov
  2006-10-15  7:43       ` Artem Zolochevskiy
  2006-10-15 10:55       ` [Comm] sh - bash Maksim Otstavnov
  2006-10-15 17:52     ` Michael Shigorin
  2 siblings, 2 replies; 18+ messages in thread
From: Sergey Vlasov @ 2006-10-15  7:26 UTC (permalink / raw)
  To: community

[-- Attachment #1: Type: text/plain, Size: 2027 bytes --]

On Sun, Oct 15, 2006 at 08:53:03AM +0300, Artem Zolochevskiy wrote:
> Pavel Usischev wrote:
> >> Собственно вопрос относительно написания скриптов
> >> Отчего же тогда вижу везде #!/bin/sh (в стартовых сценариях итп) - если
> >> этот sh такой старый и неумека?
> > 
> > Как раз для переносимости скрипта. В ALT /bin/sh -- это особый вариант
> > bash, в других системах это вполне может быть другой шелл, а bash вообще
> > может отсутствовать.
> 
> Так вот и я так думал, а получается, что нет. Ибо в альтовских скриптах
> (благодаря тому, что в альт sh это тот же bash) повсеместно используются
> фичи, кот в "оригинальном" sh не прокатят. Получается о совместимости тут
> речи нет.

В Debian /bin/sh может ссылаться на любой POSIX compatible shell:

  The standard shell interpreter /bin/sh can be a symbolic link to any
  POSIX compatible shell, if echo -n does not generate a newline.

  http://www.debian.org/doc/debian-policy/ch-files.html#s-scripts

У нас пока такого нет, но всё равно лучше в скриптах, где написано
#!/bin/sh, не использовать возможности, специфические для bash.

> альтовский sh:
> sh-3.1$ A=5
> sh-3.1$ B=6
> sh-3.1$ C=$(($A+$B))
> sh-3.1$ echo $C
> 11
> sh-3.1$
> 
> а по идее в sh это не должно прокатывать
> heirloom-sh:
> $ A=5
> $ B=6
> $ C=$(($A+$B))
> syntax error: `C=$' unexpected
> $ 

Это arithmetic expansion, который вообще-то входит в последний вариант
спецификации POSIX sh:

http://www.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html#tag_02_06_04

Правда, в стандарте есть одна проблема: там написано, что $(($x) и
$((x)) должны работать одинаково, но возможность использовать
переменные без $ в произвольных выражениях явно не прописана; в
результате существуют варианты /bin/sh, для которых заявлена
совместимость с POSIX, но выражения вида $((A+B)) там не работают.
Использование же конструкций вида $(($A+$B)) потенциально опасно, если
переменные могут содержать непроверенные данные, не являющися целыми
числами.

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [Comm] sh - bash
  2006-10-15  7:26     ` Sergey Vlasov
@ 2006-10-15  7:43       ` Artem Zolochevskiy
  2006-10-15 11:31         ` Dmitry V. Levin
  2006-10-15 17:55         ` [Comm] heirloom toolchest Michael Shigorin
  2006-10-15 10:55       ` [Comm] sh - bash Maksim Otstavnov
  1 sibling, 2 replies; 18+ messages in thread
From: Artem Zolochevskiy @ 2006-10-15  7:43 UTC (permalink / raw)
  To: community

Sergey Vlasov wrote:

> В Debian /bin/sh может ссылаться на любой POSIX compatible shell:
> 
>   The standard shell interpreter /bin/sh can be a symbolic link to any
>   POSIX compatible shell, if echo -n does not generate a newline.
> 
>   http://www.debian.org/doc/debian-policy/ch-files.html#s-scripts
> 
> У нас пока такого нет, но всё равно лучше в скриптах, где написано
> #!/bin/sh, не использовать возможности, специфические для bash.

Вот и я о том же. Только у нас, кажется, в дистрибутиве даже не на чем
проверить. Ну а я далёк от того чтоб это (не использовать возможности,
специфические для bash) было на кончиках пальцев. Я вот для проверки стащил
heirloom-sh, после чего собственно и выяснилось, что куда ни глянь в
скриптах где #!/bin/sh используются не sh-эвые фишки.
К примеру сплошь и рядом что-то типа PROG="${0##*/} - см. к
примеру /usr/bin/apropos
Или я снова промахнулся? по крайней мере на heirloom-sh такие фишки не
прокатывают.
Получается, что повсеместно в скриптах указано #!/bin/sh - и работает это  с
альтовым sh хорошо, а вот с другим - не факт.

-- 
Artem Zolochevskiy
Kaliningrad, Russia
JID: az@jabber.org



^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [Comm] sh - bash
  2006-10-15  5:41   ` Artem Zolochevskiy
  2006-10-15  6:13     ` Alexey Rusakov
@ 2006-10-15  8:41     ` Andrey Rahmatullin
  2006-10-15  8:56       ` Artem Zolochevskiy
  1 sibling, 1 reply; 18+ messages in thread
From: Andrey Rahmatullin @ 2006-10-15  8:41 UTC (permalink / raw)
  To: community

[-- Attachment #1: Type: text/plain, Size: 781 bytes --]

On Sun, Oct 15, 2006 at 08:41:41AM +0300, Artem Zolochevskiy wrote:
> Я по наивности предполагал, что #!/bin/sh используют для переносимости. Но
> тогда непонятно отчего в скриптах в системе повсеместно #!/bin/sh если сам
> этот альтовский sh скорее bash чем оригинальный старый sh, а соответственно
> это явно _не_ для переносимости.
Я не понял, вы предлагаете пофиксить sh или написать во всех скриптах
#!/bin/bash? И почему вы так последовательно говорите о "скриптах в
системе", "скриптах в альте", вы ж прекрасно понимаете, что скрипты эти по
больше йчасти общие для всех линуксов (и не только)? :)

-- 
WBR, wRAR (ALT Linux Team)
Powered by the ALT Linux fortune(8):

> может, в backports предложить?
Не надо нестабильные версии туда.
		-- zerg in sisyphus@

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 191 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [Comm] sh - bash
  2006-10-15  8:41     ` Andrey Rahmatullin
@ 2006-10-15  8:56       ` Artem Zolochevskiy
  2006-10-15  9:03         ` Andrey Rahmatullin
  0 siblings, 1 reply; 18+ messages in thread
From: Artem Zolochevskiy @ 2006-10-15  8:56 UTC (permalink / raw)
  To: community

Andrey Rahmatullin wrote:

> Я не понял, вы предлагаете пофиксить sh или написать во всех скриптах
> #!/bin/bash?

Ничего не предлагаю. Просто пытаюсь понять что мне писать. Ну и по ходу
пытаюсь взглянуть на примеры скриптов и понять отчего везде вижу #!/bin/sh,
хотя, похоже, используются фичи bash-a.

> И почему вы так последовательно говорите о "скриптах в 
> системе", "скриптах в альте", вы ж прекрасно понимаете, что скрипты эти по
> больше йчасти общие для всех линуксов (и не только)? :)
> 

ну тут никакого злого умысла :-) просто так как у меня альт, вот и открываю
для скрипты альта, что поглядеть что да как люди делают. то, что общие тоже
понятно.

-- 
Artem Zolochevskiy
Kaliningrad, Russia
JID: az@jabber.org



^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [Comm] sh - bash
  2006-10-15  8:56       ` Artem Zolochevskiy
@ 2006-10-15  9:03         ` Andrey Rahmatullin
  0 siblings, 0 replies; 18+ messages in thread
From: Andrey Rahmatullin @ 2006-10-15  9:03 UTC (permalink / raw)
  To: community

[-- Attachment #1: Type: text/plain, Size: 806 bytes --]

On Sun, Oct 15, 2006 at 11:56:23AM +0300, Artem Zolochevskiy wrote:
> Ничего не предлагаю. Просто пытаюсь понять что мне писать. Ну и по ходу
> пытаюсь взглянуть на примеры скриптов и понять отчего везде вижу #!/bin/sh,
> хотя, похоже, используются фичи bash-a.
Башизмы - это ошибка скриптов. Их быть не должно.
Всё просто :)

> ну тут никакого злого умысла :-) просто так как у меня альт, вот и открываю
> для скрипты альта, что поглядеть что да как люди делают. то, что общие тоже
> понятно.
Ну вот, тогда для общего случая "у нас sh == bash" - не аргумент. Только
вот как там работают эти кривые скрипты - непонятно.

-- 
WBR, wRAR (ALT Linux Team)
Powered by the ALT Linux fortune(8):

Сделаю все, что будет в моих силах.
Последних, правда, совсем мало осталось.
		-- ldv in devel@

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 191 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [Comm] sh - bash
  2006-10-15  7:26     ` Sergey Vlasov
  2006-10-15  7:43       ` Artem Zolochevskiy
@ 2006-10-15 10:55       ` Maksim Otstavnov
  1 sibling, 0 replies; 18+ messages in thread
From: Maksim Otstavnov @ 2006-10-15 10:55 UTC (permalink / raw)
  To: community

Hello Sergey,

Sunday, October 15, 2006, 11:26:34 AM, you wrote:

SV> Правда, в стандарте есть одна проблема: там написано, что $(($x) и
SV> $((x)) должны работать одинаково, но возможность использовать
SV> переменные без $ в произвольных выражениях явно не прописана;

Так а второе из первого не следует. Я бы исходил из того, что такой
возможности нет.

SV> в результате существуют варианты /bin/sh, для которых заявлена
SV> совместимость с POSIX, но выражения вида $((A+B)) там не работают.
SV> Использование же конструкций вида $(($A+$B)) потенциально опасно,
SV> если переменные могут содержать непроверенные данные, не являющися
SV> целыми числами.

А чем бы помогло " $((A+B))"?

Кстати, и для раскрытия одной одвускобленной переменной написано, что
"*If the shell variable x contains a value that forms a valid integer
constant*, then the arithmetic expansions "$((x))" and "$(($x))" shall
return the same value" (Ibid., 2.3.6).

Не вполне понятно, как должна вести себя оболочка при нецелом или
нечисловом значении x; вполне возможно, что последнее предложение в
следующем за процитированным абзаце ("If the expression is invalid,
the expansion fails and the shell shall write a message to standard
error indicating the failure") просто забили отбить абзацем, и оно
относится к любому арифметическому раскрытию, а не только к случаям
поддержки нестандартных операций или иных типов переменных, о которых
говорится в сем абзаце.

Я, по крайней мере, столкнувшись некоторое время назад с этим
вопросом, понял это так: и "$((x))", и "$(($x))" при неподдерживаемом
арифметическом типе x или нечисловом x _должны_ (SHALL) вызывать
ошибку раскрытия. Есть другие идеи?

PS: А опечаток-то в тексте 2004 г.... :(

-- 
-- Maksim




^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [Comm] sh - bash
  2006-10-15  7:43       ` Artem Zolochevskiy
@ 2006-10-15 11:31         ` Dmitry V. Levin
  2006-10-18 12:01           ` Fr. Br. George
  2006-10-15 17:55         ` [Comm] heirloom toolchest Michael Shigorin
  1 sibling, 1 reply; 18+ messages in thread
From: Dmitry V. Levin @ 2006-10-15 11:31 UTC (permalink / raw)
  To: ALT Linux general discussion list

[-- Attachment #1: Type: text/plain, Size: 688 bytes --]

On Sun, Oct 15, 2006 at 10:43:19AM +0300, Artem Zolochevskiy wrote:
> Sergey Vlasov wrote:
> 
> > В Debian /bin/sh может ссылаться на любой POSIX compatible shell:
> > 
> >   The standard shell interpreter /bin/sh can be a symbolic link to any
> >   POSIX compatible shell, if echo -n does not generate a newline.
> > 
> >   http://www.debian.org/doc/debian-policy/ch-files.html#s-scripts
> > 
> > У нас пока такого нет, но всё равно лучше в скриптах, где написано
> > #!/bin/sh, не использовать возможности, специфические для bash.
> 
> Вот и я о том же. Только у нас, кажется, в дистрибутиве даже не на чем
> проверить.

Есть такой пакет, ash называется.


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [Comm] sh - bash
  2006-10-14 22:50 ` Pavel Usischev
  2006-10-15  5:53   ` Artem Zolochevskiy
@ 2006-10-15 17:48   ` Michael Shigorin
  1 sibling, 0 replies; 18+ messages in thread
From: Michael Shigorin @ 2006-10-15 17:48 UTC (permalink / raw)
  To: ALT Linux Community

On Sun, Oct 15, 2006 at 02:50:01AM +0400, Pavel Usischev wrote:
> > Отчего же тогда вижу везде #!/bin/sh (в стартовых сценариях
> > итп) - если этот sh такой старый и неумека?
> Как раз для переносимости скрипта. В ALT /bin/sh -- это особый
> вариант bash, в других системах это вполне может быть другой
> шелл, а bash вообще может отсутствовать.

Ещё один момент -- sh у нас довольно давно собран ободранным как
липка, именно в качестве интерпретатора для скриптов.  Поэтому
если после какого-нить chroot (например, с rescue cd) получаете
шелл, в котором стрелочки не работают (поскольку собран без 
readline в частности) -- значит, надо запустить bash.

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [Comm] sh - bash
  2006-10-15  5:53   ` Artem Zolochevskiy
  2006-10-15  5:57     ` Artem Zolochevskiy
  2006-10-15  7:26     ` Sergey Vlasov
@ 2006-10-15 17:52     ` Michael Shigorin
  2 siblings, 0 replies; 18+ messages in thread
From: Michael Shigorin @ 2006-10-15 17:52 UTC (permalink / raw)
  To: community

On Sun, Oct 15, 2006 at 08:53:03AM +0300, Artem Zolochevskiy wrote:
> Вот и получается что использование #!/bin/sh в альте явно не
> для совместимости.

Вы просто заподозрили цели более широкие, чем те, достижение
которых ставить разумно.  Совместимость -- очень скользкая штука,
попробуйте-ка сперва написать по документации чего для SunOS sh,
а потом подумать ещё раз -- кому именно нужны привычки вида "пишу
на таком sh, чтобы работало везде", а кому вообще-то достаточно
bash и позиции "поставьте bash или портируйте сами", что хорошо
бы отметить соответственно #!/bin/bash.

Короче, дело как обычно не "в альте", а в людях вообще.
Общей линии тут, особенной для ALT, мне не наблюдается.

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [Comm] heirloom toolchest
  2006-10-15  7:43       ` Artem Zolochevskiy
  2006-10-15 11:31         ` Dmitry V. Levin
@ 2006-10-15 17:55         ` Michael Shigorin
  1 sibling, 0 replies; 18+ messages in thread
From: Michael Shigorin @ 2006-10-15 17:55 UTC (permalink / raw)
  To: community

On Sun, Oct 15, 2006 at 10:43:19AM +0300, Artem Zolochevskiy wrote:
> Я вот для проверки стащил heirloom-sh

А, вот оно что.  Остальной сундук не рассматривали?
Оно там в UTF-8 locales работает, в отличие от coreutils.
По крайней мере то, что перепробовал (tr и sed); плюс это
как фича и заявлено.

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [Comm] sh - bash
  2006-10-15 11:31         ` Dmitry V. Levin
@ 2006-10-18 12:01           ` Fr. Br. George
  0 siblings, 0 replies; 18+ messages in thread
From: Fr. Br. George @ 2006-10-18 12:01 UTC (permalink / raw)
  To: ALT Linux Community

On Sun, Oct 15, 2006 at 03:31:19PM +0400, Dmitry V. Levin wrote:
> > Вот и я о том же. Только у нас, кажется, в дистрибутиве даже не на чем
> > проверить.
> Есть такой пакет, ash называется.
Спасибо, Дима! Читал ветку и всё дивился, что ash умалчивают.

-- 
			Георгий Курячий (aka Fr. Br. George)
			Руководитель образовательных проектов ALT Linux
			mailto : george at altlinux_ru


^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2006-10-18 12:01 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-10-14 21:57 [Comm] sh - bash Artem Zolochevskiy
2006-10-14 22:27 ` Alexey Rusakov
2006-10-15  5:41   ` Artem Zolochevskiy
2006-10-15  6:13     ` Alexey Rusakov
2006-10-15  8:41     ` Andrey Rahmatullin
2006-10-15  8:56       ` Artem Zolochevskiy
2006-10-15  9:03         ` Andrey Rahmatullin
2006-10-14 22:50 ` Pavel Usischev
2006-10-15  5:53   ` Artem Zolochevskiy
2006-10-15  5:57     ` Artem Zolochevskiy
2006-10-15  7:26     ` Sergey Vlasov
2006-10-15  7:43       ` Artem Zolochevskiy
2006-10-15 11:31         ` Dmitry V. Levin
2006-10-18 12:01           ` Fr. Br. George
2006-10-15 17:55         ` [Comm] heirloom toolchest Michael Shigorin
2006-10-15 10:55       ` [Comm] sh - bash Maksim Otstavnov
2006-10-15 17:52     ` Michael Shigorin
2006-10-15 17:48   ` Michael Shigorin

ALT Linux Community general discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
		mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
	public-inbox-index community

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.community


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git