No tengo claro cómo agregar rutas permanentemente a la var. Env PATH. He encontrado varias preguntas para esto cada vez con diferentes respuestas. Creé un .bash_profile
en mi directorio de inicio, pero cada vez que reinicio tengo que export
mis rutas nuevamente.
source ~/.bash_profile
ni siquiera funciona.
¿Qué me estoy perdiendo?
Este es actualmente mi .bash_profile
export PATH="/usr/local/opt/python/libexec/bin:$PATH" export PATH="/usr/local/opt/openssl/bin:$PATH" export PATH="/Applications/XAMPP/xamppfiles/bin:$PATH" export LDFLAGS="-L/usr/local/opt/openssl/lib" export CPPFLAGS="-I/usr/local/opt/openssl/include"
Comentarios
Responder
Lo que «ha presentado es la forma correcta de agregar directorios adicionales a su usuario» s $PATH
.
Paso 1 – ~/.bash_profile
Para comenzar a hacer cambios en su ~/.bash_profile
agregando las ubicaciones que «d me gustaría haber modificado su $PATH
.
export PATH="/usr/local/opt/python/libexec/bin:$PATH" export PATH="/usr/local/opt/openssl/bin:$PATH" export PATH="/Applications/XAMPP/xamppfiles/bin:$PATH"
Paso 2: fuente ~/.bash_profile
Después de realizar las ediciones anteriores en este archivo, puede usar el comando source
o el .
notación para «recargar» y los cambios realizados en este archivo en el contexto de su shell actual.
$ . ~/.bash_profile
-o-
$ source ~/.bash_profile
Paso 3 – Evalúe los cambios
Después de realizar las ediciones y obtenerlas, puede confirmar que tuvieron el efecto que deseaba haciendo eco del contenido de la variable.
$ echo $PATH | tr ":" "\n" /usr/local/bin /usr/bin /bin /usr/sbin /sbin /opt/X11/bin /Applications/Wireshark.app/Contents/MacOS /usr/local/sbin /Users/smingolelli/bin /usr/local/opt/go/libexec/bin /Applications/Visual Studio Code.app/Contents/Resources/app/bin /Users/smingolelli/projects/kubebuilder/kubebuilder_1.0.5_darwin_amd64/bin/
El orden es importante, por lo que los directorios que aparecen primero se buscarán primero. Si un binario vive en varios lugares, el primer lugar que se encuentre será el que se utilice.
También tenga en cuenta que varias fuentes de este archivo tendrán el efecto negativo de continuar agregando los mismos cambios, por lo que a menudo es el caso que querrá ajustar completamente $PATH
a un estado inicial conocido consistente y luego modificarlo con estos tipos de comandos:
export PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin" export PATH="/some/new/dir:$PATH"
Uso de path_helper
macOS también incluye un ayudante para ayudar en la administración de su $PATH
. Se encuentra aquí /usr/libexec/path_helper
.
Entonces, en lugar de crear manualmente su base $PATH
como se mencionó anteriormente, puede hacerlo use este fragmento para obtener un buen punto de partida conocido para su $PATH
.
[ -x /usr/libexec/path_helper ] && eval $(/usr/libexec/path_helper -s)
Esto se encargará de inicializar $PATH
por lo que cualquier directorio listado en /etc/paths
y /etc/paths.d/
se agregan automáticamente.
Comentarios
- Podría ser mejor usar
[ -x /usr/libexec/path_helper ] && eval $(/usr/libexec/path_helper -s)
para inicializar la ruta de modo que cualquier directorio listado en/etc/paths
y/etc/paths.d/
se agregan automáticamente. - @nohillside tiene sentido. Yo no estaba ' t consciente de que macOS tenía este asistente, gracias, ' agregaré a A ' er.
- Tengo un vistazo a
/etc/profile
. No es ' mucho allí, pero las iniciales isingPATH
es parte de esto. - Solo una cabeza ' s arriba, mi
~./bash_profile
solo se enruta a~/.bashrc
que es el archivo real que tuve que modificar. - @slm
[ -x /usr/libexec/path_helper ] && eval $(/usr/libexec/path_helper -s)
eliminar la segunda parte me da el mismo resultado que usar la primera parte cuandosource ~/.bash_profile
más de una vez. Tal vez sería útil una explicación de lo que hace cada parte.
echo $PATH
echo $PATH
para poder ver explícita y específicamente cuál fue el resultado. Lo siento, pero no puedo ' ayudar si ¡no recibí la información que solicito!/Applications/XAMPP/xamppfiles/bin:/usr/local/opt/openssl/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin