Почему сначала установить переменную, а затем экспортировать ее вместо настройки и экспорта в одной команде?

Если gpg-agent выполняется, он выводит данные, которые могут обрабатываться непосредственно оболочкой, например:

 SSH_AUTH_SOCK=/tmp/ssh-apeOFqMF3292/agent.3292; export SSH_AUTH_SOCK; SSH_AGENT_PID=3293; export SSH_AGENT_PID; echo Agent pid 3293; 

Почему gpg-agent делает это? Я видел больше программ, которые делают это. Разве оболочки в прошлом не поддерживали export var=val ? Какие оболочки не поддерживают эту альтернативную оболочку?

  • Cron Job Hourly, за исключением определенных временных рамок в пятницу
  • Тройка> (процесс) обрезает его stdout при записи файла
  • Потребление памяти сценария
  • Количество файлов, содержащих заданную строку
  • Новый пользователь Запуск скрипта с qsub
  • является оболочкой интерфейс к терминалу?
  • Я работаю с bash в Kubuntu.

  • Как я могу заставить команду «bind» работать в sh shell
  • Извлечение строк из ключей из файла
  • Шелл-скрипт, фильтрующий атрибуты файлов jpg
  • BASH как сохранить вывод rm с меткой времени?
  • Что делает оператор запятой в арифметике Баша?
  • автозаполнение в сценарии оболочки
  • One Solution collect form web for “Почему сначала установить переменную, а затем экспортировать ее вместо настройки и экспорта в одной команде?”

    Традиционная оболочка Bourne не поддерживала их объединение (хотя System V позволяет вам опустить; в оболочке 4.2BSD / SunOS не было). Он был добавлен оболочкой Korn (пересекающей export оболочки Bourne с csh ), а затем был принят другими оболочками и POSIX.2. Многие коммерческие Unixes по-прежнему поставляют версию System V оболочки Bourne как /bin/sh , поэтому сохранение совместимости – хорошая идея для переносимости.

    Linux и Unix - лучшая ОС в мире.