Разница между использованием export и созданием локальных переменных в Bash заключается в области действия переменных: ru.hexlet.io bashcommands.com
- Использование export. ru.hexlet.io bashcommands.com Эта команда отмечает переменную для экспорта во все дочерние процессы, созданные внутри оболочки, и делает её переменной окружения. ru.hexlet.io Доступ к такой переменной можно получить как в родительской оболочке, так и во всех дочерних оболочках, процессах и командах. ru.hexlet.io
- Создание локальных переменных. ru.hexlet.io blog.sedicomm.com Если переменная задана без использования export, то она будет доступна только внутри оболочки. ru.hexlet.io Другими словами, дочерние оболочки, процесс или команды вне её не получат доступа к ней. ru.hexlet.io
Таким образом, переменные окружения (определённые с помощью экспорта) подобны глобальным переменным, а переменные оболочки (определённые без экспорта) подобны локальным переменным, доступ к которым можно получить только внутри этой оболочки. ru.hexlet.io