Donc, je n'ai ni l'un .bash_profile
ni l'autre .profile
dans mon dossier personnel. Comment les créer? Après cela, que dois-je faire à chaque fois que j'ouvre le terminal pour lire ces fichiers?
Vous pouvez utiliser la touch
commande.
Par exemple,
cd ~
pour accéder au répertoire personnel.
Nous allons maintenant créer un fichier appelé .bash_profile
(le point signifie qu'il sera caché).
Utilisez ensuite nano
ou vi
dans le terminal. À moins que vous ne sachiez ce que vi
c'est, utilisez-le nano
. Pour ouvrir ces fichiers, vous utiliseriez:
sudo nano .bash_profile
sudo
s'assure que vous pourrez enregistrer ces fichiers. Ici, vous pouvez ajouter aliases
. nano
ou vi
créera automatiquement un nouveau fichier s'il n'existe pas dans votre répertoire actuel dans Terminal.
Une fois que vous avez terminé, appuyez sur Ctrl+ O, Enteret Ctrl+ Xpour enregistrer et quitter. Enfin, utilisez
source ~/.bash_profile
pour recharger le terminal et il lira ce que vous mettez dans ces fichiers.
Bien sûr, vous pouvez aussi alias cela si vous le souhaitez. :)
Pour répondre à votre dernière question, ces fichiers seront automatiquement lus à chaque ouverture du Terminal. Cependant, s'il y a une erreur (par exemple, ne mettez pas d'espaces entre les alias), elle vous le dira.
Comme l'a souligné George, .bash_profile
ne fonctionnera que sur les shells de connexion. Pour les shells sans connexion, vous devez créer un .bashrc
fichier avec:
sudo nano .bashrc
touch
pour créer des fichiers vides?nano
le fait de toute façon automatiquement.~/.profile
une copie de~/.bash_profile
? Et si vous avez les deux, qu'avez-vous à l'intérieur~/.profile
qui ne peut pas être fait~/.bash_profile
?sudo
s'assure que vous gâchez les droits d'utilisateur. Ne fais pas ça.Vous pouvez copier ces fichiers depuis / etc / skel / qui sont des fichiers squelettes pour les nouveaux utilisateurs créés par la commande comme useradd sur les distributions basées sur Debian:
Ces fichiers seront automatiquement chargés par le shell à chaque fois que vous vous connecterez. La manière de charger ces fichiers de profil est décrite dans la page de manuel de votre shell. Dans le cas où vous utilisez bash shell de manière spéciale (par exemple, via ssh, ansible, etc ...), vous devez utiliser la commande 'bash -ilc "que vous souhaitez exécuter dans ENV préparé par ces fichiers de profil"'. -i signifie shell interactif ce qui est souvent requis par .bashrc -l shell de connexion qui provoque le chargement de .profile (ou .bash_profile existe - voir la page de manuel de bash) qui charge ensuite .bashrc
la source
Je préfère utiliser des éditeurs de texte GUI tels que BBEdit ou TextWrangler. Ces éditeurs de texte peuvent gérer des fichiers invisibles tels que .profile et .bash_profile et ils ont l'avantage d'avoir une interface graphique, contrairement à nano qui est une interface console.
TextWrangler
BBEdit
la source
Vous pouvez également utiliser un éditeur de texte GUI comme TextEdit:
open -e
est un raccourci pouropen -a TextEdit
.Vous n'avez pas nécessairement à créer .profile ou .bashrc. Terminal et iTerm 2 ouvrent de nouveaux shells en tant que shells de connexion, donc bash ne lit pas .bashrc. Si .bash_profile et .profile existent, bash ne lit que .bash_profile lorsqu'il est appelé en tant que shell de connexion interactif. .profile est lu par ksh lorsqu'il est appelé en tant que shell de connexion interactif et par bash lorsqu'il est appelé en tant que sh en tant que shell de connexion interactif.
J'ai en fait dit à iTerm 2 d'ouvrir de nouveaux shells en tant que shells sans connexion, et mon .bash_profile contient juste une ligne comme
. ~/.bashrc
. tmux et le mode shell dans emacs ouvrent de nouveaux shells en tant que shells sans connexion par défaut. .bash_profile est toujours lu lorsque je ssh sur mon ordinateur.la source
~/.bash_profile
et~/.profile
? Et vous aussi~/.bashrc
?. ~/.bashrc
.