Se me ocurren dos formas diferentes de resolver esto. El primero, es iniciar su .bashrc con una línea que establezca explícitamente su RUTA base, de esa manera cada vez que la obtiene, se restablece a la base antes de agregar directorios adicionales.
Por ejemplo, agregue:
# Reset the PATH to prevent duplication and to make sure that we include
# everything we want.
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Alternativamente, puede verificar un elemento antes de agregarlo a la ruta. Para hacer eso, usarías algo como:
if ! [[ $PATH =~ '~/perl5/bin' ]]
then
PATH="~/perl5/bin:$PATH"
fi
Sin embargo, este último tiende a ser un poco repetitivo si agrega muchas entradas, por lo que tiendo a seguir con el primero. Si desea usar esto y planea agregar muchas entradas, sería aconsejable escribir una función bash para manejarlo.
Nota: La segunda opción solo puede funcionar como está escrita en las versiones modernas de bash. El soporte de expresiones regulares no es una característica de Bourne Shell (/ bin / sh) y puede no existir en otros shells. Además, el uso de comillas puede no ser necesario o incluso puede causar problemas en algunas versiones más recientes de bash.
/etc/profile
Debian Lenny, así que lo incluyo en mi.bashrc
.