La .profile
fecha se remonta al shell Bourne original conocido como sh
. Dado que el shell GNU bash
es (dependiendo de sus opciones) un superconjunto del shell Bourne, ambos shells pueden usar el mismo archivo de inicio. Es decir, siempre que solo sh
se coloquen comandos.profile
Por ejemplo, alias
es un comando integrado válido de bash
pero desconocido para sh
. Por lo tanto, si solo tuviera un .profile
en su directorio personal y pusiera una alias
declaración en él, sh
se quejaría. Entonces, hay un archivo específico de bash que tiene comandos de inicialización de shell que bash leerá si y solo si no hay un .profile
archivo presente.
En realidad, eso es una simplificación excesiva en algunas instalaciones, y no estoy familiarizado con Fedora. Bajo bash, /etc/profile
es leído por el shell antes de cualquier archivo en su directorio de inicio. Si hay un script de inicialización de todo el sistema, a menudo dice algo como
if there is a $HOME/.profile:
source it
elseif bash is my shell and there is a $HOME/.bash_profile:
source that
¿Por qué es así? Un intento de compatibilidad a través de décadas de dialectos de concha. ¿Por qué el tutorial está escrito de esa manera? El shell Bourne ya no se usa mucho y algunas personas ni siquiera saben que hay otro shell similar a Bourne que bash. Incluso cuando la sintaxis Bourne (limitada) se utiliza para una mayor compatibilidad multiplataforma, a menudo se ejecuta dash
o bash en modo de compatibilidad POSIX. De hecho, la fuente real de Bourne es probablemente un componente de derechos de autor de Unix System V que parece ser propiedad de Novell ahora, pero no tengo idea de qué están haciendo, si es que están haciendo algo.
Para el usuario principiante, use uno $HOME/.profile
o dos $HOME/.bash_profile
pero no, y estará bien. Dado que ya tiene un .bash_profile
trabajo con eso porque puede tener cosas específicas del sistema que su instalación necesita.