¿Cómo puedo editar $ PATH en Linux?

44

Estoy usando ubuntu 9.04. Necesito agregar alguna carpeta a mi $ PATH. Sé leer el camino:

echo $PATH

Quiero poder editarlo y agregar otras 2 rutas.

Gracias

Arturo
fuente
2
Una vez que pueda hacer esto, puede realizar operaciones más sofisticadas en PATH: stackoverflow.com/questions/273909/…
dmckee
Pertenece a sitios Unix o Ubuntu.
Thomas Bratt

Respuestas:

42

Para almacenar permanentemente su ruta, tiene algunas opciones.

Le sugiero que lea la wiki de la comunidad de Ubuntu en Variables de entorno, pero la respuesta breve es que el mejor lugar es ~/.profilepara su configuración de RUTA por usuario o /etc/profilepara la configuración global.

Hacer algo como export PATH=$PATH:/your/new/path/here

akent
fuente
8
Es importante tener en cuenta que hay muchas ocasiones en las que su perfil no se ejecuta (por ejemplo, cuando cron ejecuta un script). Si necesita establecer una ruta específica en PATH, un script debe establecer esa ruta. Dicho esto, los scripts nunca deben confiar en que haya nada en sus rutas y siempre deben usar rutas absolutas, cualquier otra cosa es un problema de seguridad.
Chas. Owens
14
PATH=$PATH:newPath1:newPAth2
export PATH
Cañada
fuente
3
Creo que puedes hacerlo todo en una línea si quieres. export PATH = $ PATH: newPath1: newPAth2
2
Depende del shell que estés usando. En Solaris (sé que la pregunta es sobre Linux) uno de los shells (no recuerdo cuál de ellos) requiere que haga la exportación por separado de establecer el valor en un script. Así que acabo de acostumbrarme a hacerlo en 2 líneas.
Glen
7

También puede poner esto en el entorno global:

sudo emacs /etc/environment

Agregar a las entradas que ya están en su camino

PATH="/path/to/file:/other/paths"

Recargar el medio ambiente

source /etc/environment
jaketrent
fuente
1
Editar el archivo de entorno era la única forma en que podía hacer que la RUTA cambiara y permaneciera cambiada.
2

Ya se ha respondido sobre cómo hacerlo, pero me gustaría darle un pequeño consejo. Esto es lo que hago:

Tengo un directorio llamado .bash.den mi $HOMEy dentro guardo un conjunto de scripts de shell que hacen cosas a mi entorno (por ejemplo, configurar maven correctamente, modificar la ruta, configurar mi solicitud, etc.). Mantengo esto bajo control de versión mediante el uso de git , lo que hace que sea fácil volver a una versión funcional de su entorno, si arruina algo mal. Para obtener todas las modificaciones, simplemente obtengo todos los archivos en ese directorio al final de mi .bashrc de esta manera:

for i in $HOME/.bash.d/*; do source $i; done
unset i

Esto le brinda un entorno muy flexible que puede modificar y restaurar fácilmente, puede exportarlo a otras máquinas simplemente usando git.

André
fuente
1

Una variante de arriba, si no desea cambiar el archivo / etc / profile directamente. Puede crear un nuevo archivo yourpath.sh en el directorio /etc/profile.d/ . Luego edite este archivo así. Con vim editor (pero siéntase libre de editarlo con otro editor): vim /etc/profile.d/yourpath.sh

MYPATH='/your/new/path/'
export MYPATH
export PATH=$PATH:$MYPATH

: w rite y q uit y ya está hecho su ruta ha sido modificada. Si está utilizando el terminal, ciérrelo y vuelva a abrirlo. Su nueva variable será actualizada. Ahora está más limpio, puede eliminar este archivo cuando ya no lo necesite y no interfiera con la configuración inicial.

Arthur Vandergood
fuente
(1) Mientras PATHse exporte, MYPATHno es necesario que lo sea (a menos que lo necesite para otros fines). (2) La forma rápida de guardar (escribir) y salir en vim es ZZ: no se :requiere o (Enter).
Scott
0

echo PATH = $ PATH: ruta1: ruta2> tmp

Edite el archivo tmp con su editor de texto favorito para que el valor de PATH sea exactamente lo que desea

. ./tmp

comida
fuente