Je souhaite supprimer ~/bin
de mon CHEMIN. Je l'ai installé il y a des mois quand Linux (Ubuntu) était très nouveau pour moi, mais je ne sais pas comment je l'ai ajouté ...
Rien ne s'affiche lorsque je recherche tous les fichiers répertoriés ci-dessous.
Où pourrait-il être réglé? Il est pré-suspendu après les $HOME/.profile
préfixes PATH avec$HOME/bin
Si cela fait une différence, j'obtiens le même CHEMIN à la fois à l'invite de commande et dans un script en cours d'exécution.
#!/bin/bash
{
echo "first dir of PATH is: '${PATH%%:*}'"
shopt -s nullglob
cat \
/etc/profile \
/etc/bash.bashrc \
/etc/profile.d/*.sh \
$HOME/.bashrc \
$HOME/.bash_aliases \
/etc/bash_completion \
$HOME/.bash_completion* \
$HOME/.profile \
$HOME/.profile_zap \
$HOME/.bash_profile* \
$HOME/.bash_login* \
| sed -rne '/~\/bin/p'
}
La sortie est:
first dir of PATH is: '~/bin'
bash
environment-variables
path
Peter.O
la source
la source
PATH
. Si vous n'avez toujours pas de chance, vérifiez tous les fichiers pour tout ce qui provient.~/.gnomerc
...Réponses:
Vous souhaiterez peut-être suivre la charge complète de l'environnement lors de la connexion. Juste une idée.
Puisque / etc / profile est le premier fichier source, vous pouvez y ajouter tout en haut a:
Ouvrez ensuite un nouveau terminal et faites un
bash -l
; après cela, allez sur le terminal d'origine et supprimez les lignes ajoutées (vous voulez avoir un environnement de travail, n'est-ce pas?).Vous devriez terminer avec une trace complète de toutes les étapes de loading_the_bash_environment sur /tmp/debug.log. Ce sera un fichier loooong.
Avec cela, vous devez être en mesure de localiser où le "~ / bin" pénètre dans votre PATH
Je chercherais d'abord un grep de tous les fichiers provenant. De votre message, je parie que le ~ / bin dans le chemin d'accès est défini dans un fichier différent de ceux que vous avez répertoriés.
la source
konsole
) ... La première référence à le~/bin
montre déjà dans le chemin, mais je ne vois pas d'où il vient. Il est, à ce stade, déjà suivi par le$HOME/bin
de$HOME/.profile
(je suis sûr qu'il vient de là, car j'ai utilisé un répertoire supplémentaire spécial pour ce test). ... Howerver, j'ai réussi à le trouver empiriquement, en cherchant tous mes fichiers texte .. Il vient de~/.gnomerc
.. et je dois me reconnecter pour le faire changer. ?? !! ..bash -l
? Il doit envoyer le débogage (-x) qui va à stderr vers /tmp/debug.log; en effet, je viens de tester cela et fonctionne comme je m'y attendaisset
avecexec
dans la deuxième ligne, alors cela a parfaitement fonctionné pour moi :)