2010-06-26 12 views
0

Il m'a été conseillé de supprimer la commande return de mon fichier bashrc afin de permettre à Ruby Version Manager de fonctionner correctement. Est-ce que je supprime simplement la commande de retour, ou est-ce que je la remplace par une autre commande? Je suis hésitant à jouer avec mon shell à l'échelle du système sans une direction appropriée. Mais j'aimerais vraiment que le RVM fonctionne car c'est un gain de temps.Est-ce que je supprime simplement la commande bashrc 'return'?

Mon bashrc se trouve dans le répertoire etc et ressemble à ceci:

# System-wide .bashrc file for interactive bash(1) shells. 
if [ -z "$PS1" ]; then 
    return 
fi 

PS1='\h:\W \u\$ ' 
# Make bash check its window size after a process completes 
shopt -s checkwinsize 
if [[ -s /Users/justinz/.rvm/scripts/rvm ]] ; then source /Users/justinz/.rvm/scripts/rvm ; fi 

La dernière ligne, est un insert, décrit dans la RVM installation.

Répondre

2

Je ne le ferais pas. Ce return est probablement là pour une bonne raison. Il ne veut évidemment pas exécuter quoi que ce soit après cela si la variable PS1 est vide.

Je voudrais simplement déplacer la ligne insérée au-dessus de l'instruction if.


En outre, si c'est en fait dans le fichier système à l'échelle bashrc, vous devriez utiliser quelque chose comme:

${HOME}/.rvm/scripts/rvm 

plutôt que:

/Users/justinz/.rvm/scripts/rvm 

Je suis Bien sûr que Bob et Alice ne veulent pas exécuter votre script de démarrage.

Si c'est réellement votre fichier bashrc (dans /Users/justinz), vous pouvez ignorer ce dernier extrait ci-dessus.

+0

Merci. essayé ceci, mais RVM ne fonctionne pas. –

+0

Note à soi-même et les autres à l'avenir, cela n'a pas résolu le problème, mais c'est une bonne réponse. Ne plaisante pas avec le retour, c'est là pour de bonnes raisons. –

1

La dernière ligne utilise un fichier dans le répertoire de base d'un utilisateur spécifique, et ne devrait donc pas se trouver dans le bashrc du système, puisque seul root et cet utilisateur auront accès à ce fichier. Le mieux est de le placer dans le ~/.bashrc de cet utilisateur à la place.

+0

Où est le fichier .bashrc de l'utilisateur ou est-ce quelque chose que je devrais créer pour cet utilisateur? J'ai regardé partout –

+0

Ce serait dans '~', le répertoire personnel de l'utilisateur. –