Cómo ejecutar una función en el archivo .profile

Cómo ejecutar una función en el archivo .profile

Tengo una función que se supone que elimina copias duplicadas de directorios de mi PATHvariable de entorno. He creado algunos duplicados para poder probarlo pero no sé cómo:

1) poner el script en el $HOME/.bashrcarchivo

Respuesta1

Simplemente edite el .bashrcarchivo (mejor haga una copia del original primero, por si acaso) y simplemente agregue una línea con el nombre del script que desea ejecutar en el archivo (en la parte inferior .bashrcestaría bien).

Si el script no está en su directorio de inicio, asegúrese de especificar la ruta completa.

Respuesta2

El archivo correcto para variables de entorno como PATHnot ~/.bashrcpero ~/.profile. .bashrces un archivo de configuración para shells interactivos; .profilees el script de inicio de sesión. Ver¿Existe un archivo equivalente ".bashrc" leído por todos los shells?.

Bash es un poco peculiar con sus archivos de inicio: en los shells de inicio de sesión, lee ~/.bash_profilesi existe y ~/.profileno. En shells interactivos sin inicio de sesión, se lee ~/.bashrc. No hay razón para no cargar configuraciones interactivas en shells de inicio de sesión interactivos, y hay muchas configuraciones en las que el shell de inicio de sesión no se invoca como shell de inicio de sesión, sino que ~/.profilese lee explícitamente. Así que haz que ~/.bash_profilecontenga solo estas dos líneas:

. ~/.profile
case $- in *i*) . ~/.bashrc;; esac

Si tenía cosas en ~/.bash_profile, muévalas a ~/.profilesi son cosas como configuraciones de variables de entorno y ~/.bashrcsi son configuraciones de shell interactivas, como alias y combinaciones de teclas. Pon toda tu PATHmanipulación en ~/.profile.

información relacionada