Réponses:
Réponse courte: cela ne fonctionne pas car avec .bashrcvous essayez d'exécuter une commande nommée .bashrcqui doit exister quelque part dans votre $PATHet qui doit être exécutable.
Comment éditer:
Si vous voulez l' éditer , vous devriez écrire quelque chose comme
nano ~/.bashrc
ou vim ~/.bashrcou emacs ./bashrcou tout autre éditeur de texte que vous aimez; toutes les modifications entreront en vigueur la prochaine fois que vous ouvrirez un shell interactif (pas de connexion).
Quelques mots plus :
Il doit exister dans votre $PATHrépertoire et pas nécessairement dans le répertoire actuel, car vous utilisez commandnameet non ./commandname. Le répertoire en cours n'est généralement pas inclus dans le chemin pour des raisons de sécurité.
Il doit être exécutable car même si un fichier portant ce nom est présent dans l'un des répertoires de votre répertoire $PATH, s'il n'est pas exécutable, il ne s'exécutera pas.
Ce fichier ( ~/.bashrc) est couramment utilisé par le shell bashlorsque celui-ci est interactif. Il est généralement stocké dans votre répertoire personnel (vous pouvez le trouver dans ~/.bashrc) et détermine le comportement de vos shells interactifs.
De man bash:
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.
Avec . ~/.bashrcvous allez source le fichier comme si vous l'écriviez ligne par ligne dans le shell.
Avertissement Cela signifie que vous exécuterez à nouveau toutes les commandes qu'il contient. Il n'oubliera pas, par exemple, un vieux aliasprésent mal orthographié dans la version précédente du fichier ...
Pour bien comprendre le comportement introduit, il est préférable de commencer une
Autres conférences:
La commande que vous recherchez est
source ~/.bashrc
ou
. ~/.bashrc
Remarque:
~/les commandes ci-dessus.Lire et exécuter des commandes à partir de l'argument filename dans le contexte actuel du shell.
Syntaxe
. filename [arguments] source filename [arguments]Lorsqu'un script est exécuté à l'aide de source, il s'exécute dans le shell existant. Toute variable créée ou modifiée par le script reste disponible une fois le script terminé. En revanche, si le script est exécuté comme un nom de fichier, un sous-shell distinct (avec un ensemble de variables complètement séparé) sera créé pour exécuter le script.
Il existe une différence subtile entre l'exécution d'un script en exécutant .ss64script (dot ss64script) et. ss64script (ss64script espace de points) le premier exécute un fichier caché à la commande 'ls' (bien que ls -a affichera les fichiers cachés) la deuxième option exécutera ss64script même s'il n'a pas été défini comme exécutable avec chmod .
~/.bashrcvous devez créer un ...
echo >>~/.bashrcà quelqu'un qui commence seulement à traiter ce genre de problèmes. Avec un ordinateur, il est si rapide de faire un gâchis irrécupérable ... :-) Le >>fichier sera créé s'il n'existe pas. S'il ~/.bashrcexiste à la place, il ajoutera uniquement la sortie inoffensive de empty echo, évitant ainsi la suppression involontaire d'un fichier aussi critique, qu'il est en outre difficile de restaurer pour un débutant sans sauvegarde.
source ~/.bashrc-bash: /Users/myname/.bashrc: Aucun fichier ou répertoire de ce type /// My-Air: ~ myname $. ~/.bashrc-bash: /Users/myname/.bashrc: Aucun fichier ou répertoire de ce type