La ruta del shell (es decir, PATH) para un usuario en OSX es una variable que define un conjunto de ubicaciones en el sistema de archivos mediante el cual el usuario puede usar ciertas aplicaciones, comandos y scripts de shell sin la necesidad de Especifique la ruta completa a ese comando o programa en la Terminal.
Si ingresa abc
en la Terminal, se ejecutará la primera aparición de abc
en una de las rutas definidas en PATH.
Para acceder o imprimir la variable PATH, debe usar $ PATH.
Ejemplo:
echo $PATH
La variable PATH tiene una parte general y una parte específica del usuario.
1. Parte general:
La parte general se define por el archivo (superior) / etc / paths y por el contenido (inferior) de la carpeta /etc/paths.d .
El contenido predeterminado del archivo / etc / rutas (en OS X) es:
/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin
La carpeta predeterminada /etc/paths.d está vacía. En sistemas antiguos con una instalación X11, la carpeta contiene un archivo llamado 50-X11 con el contenido
/usr/X11/bin
que agrega una ruta adicional ( / usr / X11 / bin ) a PATH.
El número- añadido simplemente define el orden de carga.
Mi carpeta /etc/paths.d contiene los siguientes archivos:
/etc/paths.d/40-mysql #file content: /usr/local/mysql/bin
/etc/paths.d/50-X11 #file content: /usr/X11/bin
/etc/paths.d/60-testdisk #file content: /usr/local/testdisk
/etc/paths.d/70-git #file content: /usr/local/git/bin
El PATH resultante es
echo PATH$
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/mysql/bin:/usr/X11/bin:/usr/local/testdisk:/usr/local/git/bin
2. Parte específica del usuario:
La parte específica del usuario se define en el archivo ~ / .bash_profile . Si ha creado un contenedor de carpetas en su carpeta de usuario e instalado algunas aplicaciones allí, puede agregar la siguiente línea en ~/.bash_profile
export PATH="/Users/username/bin:$PATH"
o
export PATH="$PATH:/Users/username/bin"
La primera entrada preferiblemente ejecuta un comando abc
que se encuentra en la carpeta / bin del usuario, la segunda es un comando abc
que se encuentra en la ruta general antes de ejecutar uno con el mismo nombre en la carpeta ~ / bin.
Esta parte de PATH definida por .bash_profile solo es efectiva para el usuario respectivo.
Para agregar la ruta ingresada en .bash_profile a la RUTA actual, inmediatamente debe obtener el archivo una vez:
source ~/.bash_profile
3. Rutas temporales
Al emitir export PATH="/Users/username/bin:$PATH"
o export PATH="$PATH:/Users/username/bin"
en la Terminal, puede agregar una ruta temporalmente.
Esta parte de PATH se pierde después de cerrar la ventana de la Terminal, cerrar sesión o reiniciar la Mac.
Ejemplos (usando la parte general de arriba):
El archivo ~ / .bash_profile contiene export PATH="/Users/username/bin:$PATH"
y usted emite en la Terminal export PATH="/Users/username/bin2:$PATH"
, luego el PATH resultante es:
/Users/username/bin2:/Users/username/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/mysql/bin:/usr/X11/bin:/usr/local/testdisk:/usr/local/git/bin
\____temp. path_____/
El archivo ~ / .bash_profile contiene export PATH="$PATH:/Users/username/bin"
y usted emite en la Terminal export PATH="/Users/username/bin2:$PATH"
, luego el PATH resultante es:
/Users/username/bin2:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/mysql/bin:/usr/X11/bin:/usr/local/testdisk:/usr/local/git/bin:/Users/username/bin
\____temp. path_____/
Summary
PATH (o $ PATH) está definido por varios archivos: / etc / path, los archivos en /etc/paths.d y ~ / .bash_profile y en caso de agregar una ruta temporal por contenido RAM adicional.