Je ne trouve pas .bash_profile
dans Ubuntu 14.04 dans mon /home/user
répertoire. J'ai utilisé la ls -a
commande pour voir le .bash_profile
, mais il n'y a pas un tel fichier.
Je ne trouve pas .bash_profile
dans Ubuntu 14.04 dans mon /home/user
répertoire. J'ai utilisé la ls -a
commande pour voir le .bash_profile
, mais il n'y a pas un tel fichier.
Réponses:
Ubuntu utilise ~/.profile
.
vous pouvez créer votre .bash_profile
dans Ubuntu mais vous .profile
ne pourrez pas le lire.
Si nous lisons le contenu .profile:
cat ~/.profile
# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
Alors utilisez ~/.profile
au lieu de~/.bash_profile
vim ~/.bashrc
puis. ~/.bashrc
Lors de l'appel d'un shell de connexion, bash recherchera ses fichiers de configuration dans cet ordre:
[0] ~/.bash_profile
[1] ~/.bash_login
[2] ~/.profile
Après avoir trouvé le premier, il cesse de chercher les autres , donc s'il y a un .bash_profile
dans mon $HOME
bash ne cherchera pas .bash_login
et .profile
plus.
À partir de ces trois noms de fichier, Ubuntu utilise par défaut, .profile
vous pouvez le renommer .bash_profile
si vous le souhaitez:
mv ~/.profile ~/.bash_profile
Maintenant , si nous ouvrons un nouveau shell bash en utilisant bash -l
, su - $USER
, sudo -u $USER -i
ou toute autre commande qui fonctionne bash comme shell de connexion, ~/.bash_profile
va se source.
Ce dont j'ai parlé jusqu'à présent ne concerne que Bash lui-même. Lorsque vous vous connectez au système à partir d'une interface graphique, le gestionnaire d'affichage est responsable de la recherche des fichiers appropriés.
Ubuntu utilise gdm3
comme gestionnaire d’affichage, si nous examinons: /etc/gdm3/Xsession
nous pouvons voir qu’aucun des fichiers ne sera acheté sauf .profile
:
# First read /etc/profile and .profile
for file in /etc/profile "$HOME/.profile"; do
if [ -f "$file" ]; then
source_with_error_check "$file"
fi
done
Par conséquent, si vous utilisez une interface graphique pour vous connecter, conservez le fichier sous le .profile
nom, sinon vous risqueriez de perdre certaines variables et certains paramètres dans vos environnements.
Je suppose que la meilleure option est de créer un lien symbolique vers .profile
:
ln -s ~/.profile ~/.bash_profile
Désormais, vos données sont stockées .profile
, gdm
il ne manque rien, des chargements bash .bash_profile
sont en réalité .profile
, et en modifiant chacun d’eux, vous obtenez le même résultat.
Si vous n'en avez pas, .profile
récupérez-en une copie d'ici:
cp /etc/skel/.profile ~/.profile
ou
# Remember the note above
cp /etc/skel/.profile ~/.bash_profile
man bash
sur Ubuntu décrit toujours comment il va chercher .bash_profile en premier.
.bash_profile
abord il ne peut pas le trouver (car il n'existe pas) puis cherche .bash_login
ne peut pas le trouver à nouveau (car Ubuntu n'utilise pas ces deux noms) il le cherche finalement .profile
et oui il est. Donc, si vous créez un .bash_profile
in, ~
vous écrasez celui d'Ubuntu ~/.profile
, c'est le comportement par défaut de bash. Rien n'a été modifié ici.
.bash_profile
, ce n'est pas lu. Je viens de me rendre compte que c'est parce qu'Ubuntu n'utilise plus 'Bash' en tant que shell de connexion graphique. Il utilise 'Dash' à la place. Je pense que cela est vrai depuis environ 18.04.
Cela signifie que le fichier n'existe pas. Mais, vous pouvez créer le fichier et bash
exécuter / sources le fichier s'il bash
est appelé en tant que shell de connexion. Donc, tout le temps vous vous connectez via un shell (par exemple via ssh
).
Si vous souhaitez que le contenu soit exécuté à chaque fois que vous ouvrez un terminal, vous devez .bashrc
plutôt modifier le fichier.
/etc/skel/
répertoire.
.bash_profile
est manquante (et ne fonctionne pas) sur Ubuntu dans des commentaires sur d'autres réponses.
Top réponse à utiliser ~/.profile
au lieu de ~/.bash_profile
n'a pas fonctionné pour moi.
Modification a .bashrc
travaillé
Juste:
vim ~/.bashrc
Note: J'utilise Ubuntu WSL.
~/.profile
juste pas chargé par défaut dans Ubuntu 18.04
Si vous voulez parler du .bashrc, vous le trouverez dans votre dossier personnel. S'il ne s'y trouve pas, vous pouvez le copier du dossier / etc / skel dans votre dossier personnel.
Si vous avez besoin de plus d’informations à ce sujet, veuillez visiter la page stefaan lippens.
~/.profile
place.