У меня есть команда, которую я выполняю в bash, для которой требуется переменная среды. Если я называю это так, то все работает отлично:Объем экспортируемых переменных в bash
export MYVAR=value & my_first_command
Но теперь я хочу, чтобы трубы результат на второй команды, которая требует той же переменной окружения. Я попробовал это один:
export MYVAR=value & my_first_command | my_second_command
В этом случае MYVAR
кажется, не должен быть установлен для my_second_command
. Каков правильный синтаксис, чтобы сделать MYVAR
доступным для my_second_command
?
экспорт должен сделать MYVAR доступным для всех подпроцессов. FWIW, у вас есть опечатка, попробуйте 'export MYVAR = value && my_first_command' выполнить' my_first_command', если предыдущая команда была успешной. –
Я даже не понимаю, как первая попытка может работать. Используя '&', переменная должна быть экспортирована только в своей «ничего-ничего», а не в 'my_first_command'. –
что не так с 'export MYVAR = value; my_first_command; my_second_command'? – slayedbylucifer