set
и export
не являются ключевыми словами Go .Может быть, вы думаете о раковине?Похоже, вы пытаетесь установить и экспортировать переменные среды.
Невозможно экспортировать переменные среды из одного процесса в другой.Вы можете изменить только среду своего собственного процесса.Дочерние процессы наследуют среду родителя, но вы не можете пойти другим путем.Вы можете сделать это только в программе оболочки, потому что эта «программа» на самом деле является набором команд для самой оболочки, и только тогда, когда используется source something.sh
.sh something.sh
, напротив, запускается в новом процессе оболочки.
Если вы хотите «экспортировать» данные из программы без оболочки, вам придется распечатать данные в каком-либо формате, JSON - хороший выбор, и его следует прочитать другому процессу.