[newbies] Bash and POSIX - local variables

Alexander Lubyagin lubyagin на yandex.ru
Пт Ноя 21 12:32:06 MSK 2025


21.11.2025 00:44, Leonid Krivoshein пишет:
>> [ ... ]
>>
>> Полагаться ли на поддержку локальных переменных?
>
> Зависит от целеполагания. Поддержка local появилась давно. Во многих 
> системах /bin/sh является симлинком на что-то, что совершенно не 
> обязано быть POSIX-compliant shell. Например, даже в старых альтах это 
> был bash3 с поддержкой local. Проверяйте ash, используйте subshell ( 
> ... ), если так важна переносимость. По-моему, все, кто за неё радел, 
> уже давно забили на это дело и пользуются всеми прелестями башизмов. 
> :-) Куда важнее для правильного скриптования использовать shellcheck.

Да, по-моему, переносимость между shell-ами в соответствии со стандартом 
является реликтом.

Будет ли нормальным заменить shebang-строки в модулях Альтератора на 
/bin/bash ?

Там полно локальных переменных.

Хотя в ash и pdksh локальные переменные и поддерживаются.

$ ls -l /bin/sh
lrwxrwxrwx 1 root root 3 фев 19  2019 /bin/sh-> sh4

-- 


Подробная информация о списке рассылки devel-newbies