GNU/Linux >> Tutoriales Linux >  >> Linux

Establecer variables ambientales en un directorio particular

en tu bashrc configura esto:

PROMPT_COMMAND='[[ $PWD == "/foo/bar/" ]] && export FOO=BAR || unset FOO'

El contenido de la variable PROMPT_COMMAND se ejecutará cada vez que se reescriba su solicitud (justo antes de que se escriba realmente). El comando anterior verifica la variable $PWD (que contiene el directorio de trabajo actual de su shell) contra "/foo/bar" si coincide, exporta su variable si no lo hace, entonces la variable no está configurada.

EG

[email protected]$ PROMPT_COMMAND='[[ $PWD == "/home/peteches/test" ]] && export FOO=BAR || unset FOO'
[email protected]$ pwd
/home/peteches
[email protected]$ cd test
[email protected]$ pwd
/home/peteches/test
[email protected]$ env | grep FOO
6:FOO=BAR
73:PROMPT_COMMAND=[[ $PWD == "/home/peteches/test" ]] && export FOO=BAR || unset FOO
[email protected]$ cd ../
[email protected]$ pwd
/home/peteches
[email protected]$ env | grep FOO
72:PROMPT_COMMAND=[[ $PWD == "/home/peteches/test" ]] && export FOO=BAR || unset FOO
[email protected]$ 

Si no le importa usar una solución alternativa, agréguela a su .bash_profile

mycd()
{
    cd $1
    if [ "$(pwd)" == "/your/folder/that/needs/env" ]; then
        export RAILS_ENV=development
    else
        export RAILS_ENV=
    fi;
}
alias cd=mycd

Cada vez que te muevas a una carpeta determinada, esto establecerá tu variable env o lo que quieras


Primero, AFAIK, bash no buscará un .bashrc archivo en cualquier otro directorio que no sea su hogar, al menos, no de forma predeterminada.

En segundo lugar, después de escribir nuevas entradas en su .bashrc , deberías source .bashrc el archivo, para que se produzcan modificaciones.


Linux
  1. Variables “anidadas” en bash

  2. Configure el indicador de terminal en Ubuntu para mostrar solo el nombre del directorio de trabajo en lugar de su ruta completa

  3. directorio rsync para que todos los cambios aparezcan atómicamente

  4. ¿Cómo imprimir variables de entorno aparentemente ocultas?

  5. Establecer el nombre del remitente en la función de correo

Cómo establecer variables de entorno en MacOS

Cómo establecer y enumerar variables de entorno en Linux

Cómo establecer y enumerar variables ambientales en Linux

Cómo SSH en un directorio particular en Linux

Cómo configurar y desactivar variables de entorno en Linux

¿Cómo configurar la privacidad del directorio en cPanel?