y ¿qué está haciendo realmente este comando?
export VAR="My permanent variable"Utilicé esto y pude ver que se configuró haciendo lo siguiente:
printenv VAR Sin embargo, cuando hago console.log(process.env) en Node no puedo encontrarlo. Aquí está la salida:
{ USER: 'c', __CFBundleIdentifier: 'com.sublimetext.4', COMMAND_MODE: 'unix2003', LOGNAME: 'c', PATH: '/Applications/Sublime Text.app/Contents/SharedSupport/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin', SSH_AUTH_SOCK: '/private/tmp/com.apple.launchd.jc2uZOHY77/Listeners', SHELL: '/bin/zsh', HOME: '/Users/c', __CF_USER_TEXT_ENCODING: '0x1F5:0x0:0x0', TMPDIR: '/var/folders/tx/zyf0hzln2rn97yd61x50y9l80000gn/T/', XPC_SERVICE_NAME: '0', XPC_FLAGS: '0x0', LC_CTYPE: 'UTF-8', SSL_CERT_FILE: '/Applications/Sublime Text.app/Contents/MacOS/Lib/python3/certifi/cacert.pem', OLDPWD: '/' }Me gustaría configurar process.env.VAR directamente en bash/zsh (estoy usando zshell) y tener acceso a él en mi código de nodo.
Estableció la variable env, sin embargo, no de manera persistente.
Si lo haces
export MY_VAR=123 && node index.js Suponiendo que index.js tendrá console.log(process.env) , obtendrá el resultado. Pero en diferentes ventanas de terminal no será visible/compartido. Para lograrlo, debe agregar export VAR=value en el archivo .bashrc y volver a cargar el contenido. (Significa que cada vez que se abre una nueva terminal, establecerá ese valor)
Dado que usa zshell , será .zshrc .
nano ~/.zshrcexport YOUR_VAR=your_valuezsh o vuelva a abrir la terminalAquí hay más detalles sobre cómo hacerlo para zsh. Enlace