2012-03-17 12 views
6

Estoy experimentando con bibliotecas compartidas de Linux y agregué una entrada (export LD_LIBRARY_PATH=/path/to/library:${LD_LIBRARY_PATH}) a $ LD_LIBRARY_PATH. Ahora desearía que se fuera. ¿Cómo puedo hacer eso?Eliminando entradas de LD_LIBRARY_PATH

PS. Escribir echo $LD_LIBRARY_PATH antes de agregar una entrada me dio una línea vacía. Ahora dice:

ruta/a/biblioteca:

Respuesta

7

Si previamente se le dio línea vacía que (muy probablemente) significa que la variable no se ha establecido (por defecto no está establecido), lo que sólo puede desasignarla:

unset LD_LIBRARY_PATH 

algunas otras opciones a experimentar:

export MY_PATH=/my/path 
export MY_PATH2=/my/path2 
export LD_LIBRARY_PATH="${MY_PATH}:${MY_PATH2}" 
echo $LD_LIBRARY_PATH 
/my/path:/my/path2 

Extracción camino desde el extremo:

export LD_LIBRARY_PATH="${LD_LIBRARY_PATH/:${MY_PATH2}/}" 
echo $LD_LIBRARY_PATH 
/my/path 

Similarmente, la eliminación de trayectoria f rom al principio (si se establece como arriba):

export LD_LIBRARY_PATH="${LD_LIBRARY_PATH/${MY_PATH}:/}" 
2

Suponiendo que está usando bash, se puede establecer de nuevo a un camino vacío usando:

export LD_LIBRARY_PATH="" 

Y si desear un-exportarlo:

export -n LD_LIBRARY_PATH 

El bash man page es una gran pieza de documen para ayudar con este tipo de problema.