Încerc să rulez un script și bash export scoate text atunci când nu vreau, deoarece întrerupe rezultatul. Trebuie să rulez un script care extrage unele informații și apoi le inserează în următorul mediu de comenzi, un fel de a obține secretele AWS pentru awscli și de a le transmite în mod transparent în mediul aws. Obțin rezultate inconsecvente și nu știu de ce
$ ./bin/aws-creds mock
AWS_ACCESS_KEY_ID=mock1234
AWS_SECRET_ACCESS_KEY=mock1234
AWS_CREDS=succes
$ ddt aws-creds mock
AWS_ACCESS_KEY_ID=mock1234
AWS_SECRET_ACCESS_KEY=mock1234
AWS_CREDS=succes
Ambele ies în mod egal, ceea ce este grozav, așa că să încercăm să le rulăm și să folosim exportul la ieșire
$ export $(./bin/aws-creds mock)
$ export $(ddt aws-creds mock)
AWS_ACCESS_KEY_ID=mock1234
AWS_SECRET_ACCESS_KEY=mock1234
AWS_CREDS=succes
declar -x .... o grămadă de lucruri în plus din mediul meu
Asteapta o secunda? Ambele comenzi, atunci când sunt puse în export folosind un subshell $(...) par să facă lucruri diferite și asta este ceea ce vreau să repar. Vreau ca primul script ./bin, fără ieșire, dar toți parametrii noi inserați în mediul shell-uri. Se pare că scriptul pe care l-am scris „ddt” nu funcționează la fel din anumite motive.
Poate cineva să explice de ce și poate sugera o modalitate de a o remedia?