Je veux installer rvm sur ma machine Snow Leopard.
Il dit que je dois ajouter une ligne à mon .bashrc
fichier (j'utilise bash) mais où est mon .bashrc
fichier?
Je veux installer rvm sur ma machine Snow Leopard.
Il dit que je dois ajouter une ligne à mon .bashrc
fichier (j'utilise bash) mais où est mon .bashrc
fichier?
Réponses:
En ce qui concerne le problème .bashrc
ci-dessus:
Sur la plupart des systèmes, ~/.bashrc
n’est utilisé que lors du démarrage d’un shell interactif sans connexion . Cependant, lorsque vous démarrez un nouveau shell, il s’agit souvent d’un shell de connexion interactif . Puisqu'il s'agit d'un shell de connexion , le .bashrc
est ignoré. Pour que l’environnement reste cohérent entre les shells de non-connexion et de connexion, vous devez utiliser le source .bashrc
de votre .profile
ou de votre .bash_profile
.
Voir le manuel de référence Bash, section 6.2 Fichiers de démarrage Bash.
Appelé en tant que shell de connexion interactif ou avec --login
Lorsque Bash est appelé en tant que shell de connexion interactif ou en tant que shell non interactif avec l'option --login, il lit et exécute d'abord les commandes du fichier / etc / profile, si ce fichier existe. Après avoir lu ce fichier, il recherche ~ / .bash_profile, ~ / .bash_login et ~ / .profile, dans cet ordre, puis lit et exécute les commandes à partir de la première qui existe et est lisible.
Appelé en tant que shell interactif sans connexion
Lorsqu'un shell interactif qui n'est pas un shell de connexion est démarré, Bash lit et exécute les commandes de ~ / .bashrc, si ce fichier existe.
Donc, généralement, votre ~ / .bash_profile contient la ligne
if [ -f ~/.bashrc ]; then . ~/.bashrc; fi
après (ou avant) toute initialisation spécifique à la connexion.
Sur mon Mac (Running Leopard), il n'y avait pas de ligne à la source ~/.bashrc
. Je devais ajouter cette fonctionnalité moi-même.
Sur certains systèmes et d’autres systèmes d’exploitation, .bashrc
provient du fichier global /etc/profile
ou /etc/bash_profile
, ou est créé à l’aide des fichiers de modèle de /etc/skel
.
Pour être honnête, la distinction entre .bashrc
et .bash_profile
n'est pas bien comprise par la communauté. Lorsque de nombreux développeurs disent "Ajouter ceci à votre fichier .bashrc", ils veulent dire en réalité "Ajouter ceci à votre fichier .bash_profile". Ils veulent que la fonctionnalité soit ajoutée à votre shell de connexion (qui est .bash_profile
), pas à votre shell non-login . En réalité, peu importe, placer la configuration .bashrc
est acceptable.
Il s’avère que sur Mac OS X Snow Leopard et Mac OS X Lion, le fichier chargé est appelé .profile
, mais pas .bashrc
.
Ce que vous voulez faire est de créer un fichier ~/.profile
et de l'appeler .profile (s'il n'existe pas déjà).
Mettez toutes les informations que vous avez besoin de charger avec chaque instance de bash (Merci, thepurplepixel).
Quelques notes de côté:
-a
comme paramètre en tant que tel:ls -a
~
symbole signifie /Users/YourUserName
où YourUserName est le nom abrégé de votre nom d'utilisateur.Edit: Chris Page remarque (correctement) que tout ce que vous placez dans un fichier .profile s’appliquera à tout shell que vous utilisez (par exemple, zhs, bash, etc.). Si vous souhaitez que le contenu affecte uniquement le shell bash, placez-le dans un .bash_profile
fichier plutôt que dans un .profile
fichier.
.bash_profile
répertoire existe déjà dans votre répertoire personnel, le .profile
fichier ne sera pas lu!
Vous devez faire le vôtre .bashrc
. Vous pouvez simplement utiliser un éditeur de texte pour créer un fichier appelé .bashrc
(sans extension) avec le contenu souhaité et le sauvegarder dans votre répertoire personnel ( /Users/YourUserName/
).
.bashrc
fonctionnera, mais uniquement s'il n'y en a pas .profile
. Je suppose que ~/.profile
existe par défaut, cependant. Heureux d'avoir pu aider! (Et vous devriez mettre votre solution dans une réponse et l'accepter pour les futurs lecteurs de cette question).
Je trouve que dans mon OS 10.6.5, les paramètres bash se trouvent dans "/ etc / bashrc". Je pense que ce sont les spécifications de niveau supérieur pour shell.
Cependant, vous avez besoin d'un compte root pour le modifier. Les spécifications locales par utilisateur "~ / .bashrc" doivent commencer par l'extrait de code suivant, permettant de lire et de charger les paramètres bash au niveau du système:
if [ -r /etc/bashrc ]; then
. /etc/bashrc
fi
J'ajoute normalement des alias dans bashrc au niveau du système afin que tous les utilisateurs puissent également y accéder. À moins qu'ils ne souhaitent pas utiliser vos raccourcis et vos alias.
Bonne chance!
~/.bashrc
, pas /etc/bashrc
. /etc/bashrc
sont les paramètres globaux pour tous les utilisateurs de votre système, ce qui n’est probablement pas ce que vous voulez. En outre, Apple peut venir et changer /etc/bashrc
périodiquement, ce qui risque d’effacer vos personnalisations.
Utilisez le fichier .profile pour ajouter tout ce que vous ajouteriez à un fichier linux .bashrc.
Par exemple
PATH=/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/:/opt/local/bin:/opt/depot_tools/:~/bin:$PATH
alias t='/Users/<username>/.todo/todo.sh'
alias punch='python /Users/<username>/.todo/Punch.py'
alias clock='cat </dev/tcp/time.nist.gov/13'
alias sudotext="sudo /Applications/TextEdit.app/Contents/MacOS/TextEdit"