Establecer variables de entorno en Mac OS X Lion [osx]


Answers

Su ".profile" o ".bash_profile" son simplemente archivos que están presentes en su carpeta "home". Si abre una ventana del Buscador y hace clic en el nombre de su cuenta en el panel de Favoritos ... no podrá verlos. Si abre una ventana de Terminal y escribe "ls" para listar archivos ... aún no los verá. Pero puedes encontrarlos usando "ls -a" en la terminal. O si abre su editor de texto favorito (digamos TextEdit ya que viene con OS X) y haga File-> Open y luego presione Command + Shift +. y haga clic en el nombre de su cuenta (carpeta de inicio) y los verá también. Si no los ve, entonces simplemente puede crear uno en su editor de texto favorito.

Ahora, agregar variables de entorno es bastante directo y notablemente similar a las ventanas conceptualmente. En su .profile simplemente agregue, uno por línea, el nombre de la variable y su valor de la siguiente manera:

export JAVA_HOME=/Library/Java/Home
export JRE_HOME=/Library/Java/Home

etc.

Si está modificando su variable "PATH", asegúrese de incluir la ruta de acceso predeterminada del sistema que ya estaba configurada para usted:

export PATH=$PATH:/path/to/my/stuff

Ahora, aquí está la parte estrafalaria, puede abrir una nueva ventana de Terminal para que las nuevas variables tengan efecto, o tendrá que escribir ".profile" o ".bash_profile" para volver a cargar el archivo y hacer que se aplique el contenido al entorno de su terminal actual.

Puede verificar que los cambios surtan efecto utilizando el comando "establecer" en su Terminal. Simplemente escriba "set" (o "set | more" si prefiere una lista paginada) y asegúrese de que lo que agregó al archivo esté allí.

En cuanto a agregar variables de entorno a las aplicaciones de la GUI, normalmente no es necesario y me gustaría saber más sobre lo que estás tratando específicamente de hacer para ofrecerte una mejor respuesta.

Question

Cuando alguien dice "edite su archivo .plist" o "su archivo .profile" o ".bash_profile", etc., esto me confunde. No tengo idea de dónde están estos archivos, cómo crearlos si tengo que hacer eso, etc., y también por qué parece haber tantos diferentes (¿por qué? ¿Hacen cosas diferentes?)

Entonces, ¿podría alguien explicar con mucha paciencia a un usuario anterior de Windows (queriendo desesperadamente familiarizarse con el agradable pero inicialmente confuso mundo de OS X) cómo hacerlo paso a paso?

Necesito que las variables se establezcan tanto para las aplicaciones GUI como para las aplicaciones de línea de comandos, y en este momento es para un script ant que necesita las variables, pero probablemente habrá otras necesidades también.

Tenga en cuenta que también tengo Lion, ya que muchas de las respuestas que obtiene Google parecen estar desactualizadas para Lion ...

También tenga en cuenta que tengo prácticamente cero experiencia en el uso de la Terminal. Estoy dispuesto a aprender, pero por favor explica para un novato ...




echo $PATH

imprime el valor actual de la ruta

Luego haz vim ~/.bash_profile y escribe

export PATH=$PATH:/new/path/to/be/added

Aquí se agrega al antiguo camino, por lo que conserva el antiguo y lo agrega a su nuevo camino

entonces hazlo

source ~/.bash_profile

esto lo ejecutará y agregará el camino

luego vuelva a verificar con

echo $PATH



Explicación simplificada

Esta publicación / pregunta es algo antigua, por lo que responderé una versión simplificada para usuarios de OS X Lion. De forma predeterminada, OSX Lion no tiene ninguno de los siguientes archivos:

  • ~ / .bashrc
  • ~ / .bash_profile
  • ~ / .profile

A lo sumo, si has hecho algo en la terminal, es posible que veas ~ / .bash_history

Lo que significa

Debe crear el archivo para establecer sus comandos bash predeterminados (comúnmente en ~ / .bashrc). Para hacer esto, utilice cualquier tipo de editor, aunque es más simple hacerlo dentro de la terminal:

  1. %> emacs .profile
  2. [desde w / en emacs tipo:] source ~/.bashrc
  3. [desde w / en emacs tipo:] Ctrl + x Ctrl + s (para guardar el archivo)
  4. [desde w / en emacs tipo:] Ctrl + x Ctrl + c (para cerrar emacs)
  5. %> emacs .bashrc
  6. [desde w / en emacs escribe / pega todos tus comandos bash, guardar y salir]

La próxima vez que salga y vuelva a cargar la terminal, debería cargar todas sus preferencias de bash. Para una buena medida, generalmente es una buena idea separar sus comandos en nombres de archivos útiles. Por ejemplo, desde dentro de ~ / .bashrc, debe tener una source ~/.bash_aliases y poner todos sus comandos de alias en ~ / .bash_aliases.




Configure su variable de entorno PATH en Mac OS

Abra el programa Terminal (esto está en su carpeta Aplicaciones / Utilidades por defecto). Ejecute el siguiente comando

touch ~/.bash_profile; open ~/.bash_profile

Esto abrirá el archivo en su editor de texto predeterminado.

Para ANDROID SDK como ejemplo:

Debe agregar la ruta a su plataforma Android SDK: herramientas y directorio de herramientas. En mi ejemplo, usaré "/ Development / android-sdk-macosx" como el directorio en el que está instalado el SDK. Agregue la siguiente línea:

export PATH=${PATH}:/Development/android-sdk-macosx/platform-tools:/Development/android-sdk-macosx/tools

Guarde el archivo y salga del editor de texto. Ejecute su .bash_profile para actualizar su RUTA.

source ~/.bash_profile

Ahora, cada vez que abras el programa Terminal, PATH incluirá el SDK de Android.




Tuve un problema con Eclipse (se inició como GUI, no desde el script) en Maverics que no requería PATH personalizada. Probé todos los métodos mencionados anteriormente sin ningún resultado. Finalmente encontré la respuesta de trabajo más simple basada en sugerencias de aquí :

  1. Vaya a la carpeta /Applications/eclipse/Eclipse.app/Contents

  2. Edite el archivo Info.plist con el editor de texto (o XCode), agregue el diccionario LSEnvironment para la variable de entorno con la ruta completa . Tenga en cuenta que también incluye / usr / bin, etc.

    <dict>
      <key>LSEnvironment</key>
      <dict>
            <key>PATH</key>
            <string>/usr/bin:/bin:/usr/sbin:/sbin:/dev/android-ndk-r9b</string>
      </dict>
      <key>CFBundleDisplayName</key>
      <string>Eclipse</string>
      ...
    
  3. Volver a cargar los parámetros para la aplicación con

    /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.fra‌​mework/Support/lsregister -v -f /Applications/eclipse/Eclipse.app
    
  4. Reiniciar Eclipse




Tomé la ruta idiota. Se agregaron al final de / etc / profile

for environment in `find /etc/environments.d -type f`
do
     . $environment
done

Creé una carpeta / etc / environments y creé un archivo llamado "oráculo" o "lo que sea" y agregué las cosas que necesitaba establecer globalmente.

/ etc $ cat /etc/environments.d/Oracle

export PATH=$PATH:/Library/Oracle/instantclient_11_2
export DYLD_LIBRARY_PATH=/Library/Oracle/instantclient_11_2
export SQLPATH=/Library/Oracle/instantclient_11_2
export PATH=$PATH:/Library/Oracle/instantclient_11_2
export TNS_ADMIN=/Library/Oracle/instantclient_11_2/network/admin



Déjame ilustrarte a partir de mi ejemplo personal de una manera muy redundante.

  1. Primero después de instalar JDK, asegúrese de que esté instalado.
  2. A veces, macOS o Linux configuran automáticamente una variable de entorno para usted, a diferencia de Windows. Pero ese no es el caso siempre. Así que vamos a verificarlo. La línea inmediatamente después del eco $ JAVA_HOME estaría vacía si la variable de entorno no está configurada. Debe estar vacío en tu caso.

  3. Ahora necesitamos verificar si tenemos el archivo bash_profile. Ya viste que en mi caso ya tenemos bash_profile. Si no, tenemos que crear un archivo bash_profile.

  4. Crea un archivo bash_profile.

  5. Verifique nuevamente para asegurarse de que el archivo bash_profile esté allí.

  6. Ahora vamos a abrir el archivo bash_profile. macOS lo abre usando su programa predeterminado TextEdit.

  7. Este es el archivo donde se guardan las variables de entorno. Si ha abierto un nuevo archivo bash_profile, debe estar vacío. En mi caso, ya estaba configurado para el lenguaje de programación python y la distribución Anaconda. Ahora, necesito agregar una variable de entorno para Java que solo está agregando la primera línea. DEBE TIPO LA PRIMERA LÍNEA VERBATIM. SOLO la primera línea. Guarde y cierre el TextEdit. Luego cierra la terminal.

  8. Abra la terminal de nuevo. Comprobemos si la variable de entorno está configurada.