3 votos

Eliminar cosas de $PATH

He jugado con mi $PATH y ahora ya no funciona correctamente. Así que pensé, bueno, sólo hay que quitar las últimas cosas que he añadido. Sin embargo, parece que no puedo averiguar cómo . He añadido cosas como

export MAGICK_HOME="/Library/ImageMagick-6.7.5/"
export PATH="$MAGICK_HOME/bin:$PATH"
export DYLD_LIBRARY_PATH="$MAGICK_HOME/lib/"

No tengo los archivos ~/.bash_login ni ~/.profile ni /etc/environment. No encuentro las cadenas mencionadas en /etc/path o /etc/bashrc. No conozco ningún comando, excepto export, que manipule el $PATH.

¿Cómo puedo deshacerme de estas cadenas? (Y, si es obvio para ti, ¿qué he estropeado?)

6voto

MrDaniel Puntos 8871

Si acaba de introducir las exportaciones en el terminal como se ha indicado anteriormente, las variables del entorno sólo durarán hasta que salga de esa sesión de terminal. Así que simplemente escribiendo exit y luego reabriendo otra terminal eliminará cualquier ajuste que haya aplicado con las exportaciones anotadas realizadas en su pregunta.

export MAGICK_HOME="/Library/ImageMagick-6.7.5/"
export PATH="$MAGICK_HOME/bin:$PATH"
export DYLD_LIBRARY_PATH="$MAGICK_HOME/lib/"

Además, se pueden eliminar las variables del entorno utilizando el comando unset.

Por ejemplo:

unset MAGICK_HOME # will remove MAGICK_HOME from the environment. 

Puedes hacerlo para los otros también pero si lo haces para PATH perderás la configuración de la ruta hasta que cierres esta sesión de terminal y vuelvas a abrir una nueva ventana,etc.

Como experimento, prueba a teclear:

env | grep MAGICK_HOME

Debería ver MAGICK_HOME=/Library/ImageMagick-6.7.5/ se hace eco de vuelta si su todavía en el medio ambiente. Si no es así, entonces la configuración ya se ha perdido por un cierre de Windows. etc volver a introducir su exportación de MAGICK_HOME y tratar el comando anterior de nuevo.

entonces

exit

y finalmente volver a abrir una nueva ventana de terminal y entrar:

env | grep MAGICK_HOME 

Su configuración debería desaparecer para MAGICK_HOME. Lo mismo ocurre con la modificación realizada a todas las demás variables de entorno establecidas con el comando export en una sesión de terminal. Simplemente volverán a sus valores por defecto si no los has establecido en un archivo de invocación de inicio como se requiere para que tus variables de entorno del shell tengan un lugar más permanente en tu entorno del shell.

1voto

Para eliminar un elemento de la ruta en un shell en ejecución puede ejecutar el siguiente script:

x=
for p in $(echo -e ${PATH//:/\\n}); do
    if [[ $p != /PATH/TO/REMOVE ]]; then
        x=${x:+$x:}$p
    fi
done
PATH=$x

sustituyendo a /PATH/TO/REMOVE con el PATH que desea eliminar.

0voto

Sheehan Alam Puntos 13754

Echa un vistazo a /etc/paths.d. Desde Snow Leopard, la forma "preferida" de añadir cosas a tu ruta de acceso al shell es añadir un pequeño archivo de texto en /etc/paths.d.

Por ejemplo, tengo instalado MacGPG2, y he aquí que:

$>ls /etc/paths.d
50-X11  MacGPG2  TeX  TeXbin  git

$>cat MacGPG2 
/usr/local/MacGPG2/bin

$>echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/git/bin:/usr/local/MacGPG2/bin:/usr/texbin:/opt/local/bin:/opt/local/sbin

Eliminar los archivos de texto de /etc/paths.d parece ser el primer puerto de escala para eliminar cosas del $PATH

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X