variable new how change linux path directory add

new - how to add binary to path linux



Agregar cualquier directorio actual ''./'' a la ruta de búsqueda en Linux (6)

Esta es una pregunta antigua, pero pensé que la agregaría para aquellos que usan CSH o TCSH.

Al agregar lo siguiente a su .cshrc o .tcshrc, se agregará el directorio actual a la variable de la ruta del entorno.

setenv PATH {$PATH}:.

¿Cómo se agrega cualquier directorio actual ''./'' a la ruta de búsqueda de ejecutables en Linux?


Para el directorio actual, solo puede usar un nombre de directorio de longitud cero (nulo). Puede utilizar un colon inicial o final, o dos puntos dobles. Esto es de la página de man bash , man bash :

PATH The search path for commands. It is a colon-separated list of directories in which the shell looks for commands (see COMMAND EXECUTION below). A zero-length (null) directory name in the value of PATH indicates the current directory. A null directory name may appear as two adjacent colons, or as an initial or trailing colon. The default path is system-dependent, and is set by the administrator who installs bash. A common value is ``/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin''''.


Sé que esta es una respuesta antigua, pero si alguien más encuentra esta pregunta a través de Google como lo hice yo, aquí hay una explicación más detallada.

Si desea que la ruta de búsqueda contenga el valor de pwd en el momento de establecer la ruta de búsqueda, haga lo siguiente:

export PATH=$PATH:$(pwd)

Por lo tanto, si pwd es /home/me/tmp , PATH se establecerá en $PATH:/home/me/tmp

Sin embargo, si lo desea para que sea lo que sea su directorio de trabajo actual en el momento en que ejecute un comando (por ejemplo, el valor de pwd en cualquier momento dado esté en la ruta de búsqueda), haga lo siguiente:

export PATH=$PATH:.

Por lo tanto, si pwd es /home/me/tmp , PATH se establecerá en $PATH:. . Si su directorio de trabajo actual contiene un script llamado foo , entonces sería fount en su PATH. Si cambia los directorios a uno que no contiene foo , "foo" ya no se encontrará en el PATH.

Sin embargo, debe tener en cuenta que tener su directorio de trabajo actual en su RUTA es un riesgo de seguridad potencial, sin embargo.


Si desea agregar permanentemente el directorio en el que se encuentra actualmente a la variable PATH, puede usar

$ echo "export PATH=/$PATH:$(pwd)" >> ~/.bashrc

que expandirá $(pwd) a la cadena literal de su directorio actual y anexará la línea citada a su bashrc. Tenga en cuenta que / in /$PATH es necesario para escapar de la expansión de $PATH a su valor actual.

$ pwd /path/to/suuuuuuuuuuuuuuuuuuuuper/long/foo/directory/bin $ echo "export PATH=/$PATH:$(pwd)" >> ~/.bashrc $ tail ~/.bashrc -n 1 export PATH=$PATH:/path/to/suuuuuuuuuuuuuuuuuuuuper/long/foo/directory/bin


Um ... eso no funcionó para mí. yo lo haría

export PATH=$(pwd):$PATH

El comando previamente publicado literalmente solo agrega el punto.


export PATH=$PATH:$PWD

trabaja con bash 4.3.48