Agregué una ruta de directorio a la ruta del sistema ( $PATH
) ejecutando,
export PATH=$PATH:/home/avinash/Desktop/raj
Ahora mi camino se ve así,
$ echo $ PATH / usr / lib / lightdm / lightdm: / usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / sbin: / bin: / usr / games: / usr / local / games : / inicio / avinash / Escritorio / raj
Quiero eliminar /home/avinash/Desktop/raj
de la variable de ruta del sistema usando el comando ( como lo hace el comando de exportación al agregar la ruta ).
command-line
Avinash Raj
fuente
fuente
Respuestas:
Correr
export PATH=$PATH:/...
no configura todo elPATH
sistema. Es solo una variable de shell. Comience un nuevo shell y BOOM , se ha ido. Obviamente, si ha agregado eso a~/.bashrc
(u otro archivo de arranque del entorno) tendrá que revertir ese cambio, pero no parece ser su problema aquí.Si está desesperado por no iniciar un nuevo shell, puede configurarlo eliminándolo manualmente, con:
fuente
En su shell actual (su sesión actual de gnome-terminal) puede hacer esto usando:
En general:
eliminaciones de coincidencia más corta
$substring
de la vuelta de$string
.Echa un vistazo a la manipulación de cadenas para obtener más información.
fuente
Si quieres usarlo como un comando, aquí hay un pequeño script:
Póngale un nombre
unexport
y agréguelo a su RUTA.Uso:
unexport /usr/local/bin /bin /sbin
Este script no cambia tu realidad
PATH
. Si desea que el script lo haga, debe cambiar la última línea. Sustituirecho "export PATH=$PATH"
aexport PATH=$PATH
fuente
Si coloca la
export
declaración en cualquier archivo de inicio de shell como~/.bashrc
, puede usar los siguientes comandos en la terminal,Eliminará la carpeta de la ruta.
Si ha exportado la ruta desde una terminal
La carpeta estará en ruta mientras usted esté en ese shell. Para sobrescribir la ruta, debe asignar una nueva ruta. Como oli ya mencionó en la otra respuesta.
Puede usar el siguiente comando para establecer la ruta anterior
O simplemente
Este es el reemplazo de la subcadena,
fuente
Un truco sucio es
tr
grep -v
, ypaste
.esto probablemente no funcionará bien si algún directorio en PATH tiene
:
o una nueva líneasi te encuentras haciendo esto mucho, considera convertirlo en una función y guardarlo en tu perfil de shell (por ejemplo
.bashrc
,.zshrc
)fuente
export PATH=$PATH:/home/avinash/Desktop/raj
(Aquí ha agregado el archivo a la variable de ruta).echo $PATH
Si ejecuta este comando, esta es la salida:
¿Cómo lo eliminas del camino? solo ejecuta
Es un concepto de reemplazo de cuerdas.
fuente
El comando de construcción de shell
export
No determina si una variable está configurada o no, determina si la variable y su valor también están configurados en subprocesos.Cambiar una variable, exportada o no, no afecta el proceso padre o superior, por lo que cambiarla en un script no tiene ningún efecto a menos que se ejecute ese script
source
.Una función de shell:
recortará el último componente de la variable PATH. Su
export
estado no se ve afectado.fuente
declare -x PATH = "/ deseado / ruta / you_want" si no me equivoco, en sí mismo actualizará lo que desea y está completamente a su disposición lo que será. [Asegúrese de ejecutar como root Y como el usuario deseado para el que desea que este cambio afecte]. Para estar doblemente seguro, ejecute ENV después para asegurarse de que $ PATH se modificó efectivamente como lo desea. (Esto es útil para alterar cualquiera de los resultados que obtendrá cuando ejecute '/ usr / bin / env'. Aunque no sé si es permanente o no. En ese sentido, haga lo que se indicó anteriormente y modifique ~ / .bashrc para que se pegue)
fuente