Um caminho:
FOO=bar sh -c 'first && second'
Isso define a variável de ambiente FOO
para o comando sh
único.
Para definir várias variáveis de ambiente:
FOO=bar BAZ=quux sh -c 'first && second'
Outro:
( export FOO=bar; first && second )
Resumindo os comentários: O export
é necessário para criar uma variável de ambiente (em oposição a uma variável do shell). A coisa com variáveis de ambiente é que elas são herdadas por processos filhos. Se first
e second
forem utilitários externos (ou scripts) que analisam seu ambiente, eles não verão a variável FOO
sem o export
.