Синтаксис VAR=value <command>
делает VAR
доступным в среде команды, но оболочка не видит его при выполнении расширения переменной. Если вы хотите, чтобы оболочка увидела его, вы должны установить его в отдельном выражении. Вы можете запустить все внутри подоболочки, если хотите предотвратить утечку переменной к остальной части скрипта.
(REPO=wordpress-sites; ssh-keygen -t rsa -f ~/.ssh/"$REPO"_rsa -C "${REPO} deploy")
(Обратите внимание, что я не использовал export
, поскольку это всего лишь переменная оболочки. Его не нужно экспортировать в среду ssh-keygen
.