1 votes

Impossible de supprimer une partie de $PATH

J'essaie de résoudre tous les problèmes que je rencontre dans brew doctor Je vois :

Warning: Some directories in your path end in a slash.
Directories in your path should not end in a slash. This can break other
doctor checks. The following directories should be edited:
    /usr/local/Cellar/node/5.0.0/bin/

Je regarde dans ~/.profile , ~/.bash_profile , /etc/paths - et ne voient pas ce chemin.

Il n'y a pas de fichiers dans /etc/paths.d/ qui contient cette chaîne.

Alors, où se trouve cette $PATH de ?

1voto

I0_ol Points 681

D'après votre question, il semble que le problème vienne d'un répertoire se terminant par un / . Et il semble qu'Homebrew vous dise que le répertoire à l'origine de l'erreur est /usr/local/Cellar/node/5.0.0/bin/ . Si c'est le cas, il vous suffit de supprimer le point de départ / à partir de ce répertoire.

Mais il semble aussi que vous disiez que vous ne voyez pas ce répertoire de problèmes dans votre $PATH . Courir echo $PATH vous montrera quels répertoires se trouvent dans votre PATH. Si votre PATH contient beaucoup de répertoires, comme c'est le cas du mien, cela peut être un peu difficile à lire. Peut-être l'avez-vous simplement oublié ?

Dans tous les cas, voici un simple script pour vous montrer tous les répertoires de votre PATH ; 1 par ligne.

#!/bin/bash

# save IFS to a variable    
old_IFS=${IFS$' \t\n'}

#set IFS to a colon
IFS=':'

for item in ${PATH[@]}
do 
    echo $item
done

# set IFS back to the default setting
IFS=$old_IFS

Ou si vous préférez, copiez et collez directement dans votre terminal :

old_IFS=${IFS-$' \t\n'}; IFS=':'; for item in ${PATH[@]}; do echo $item; done; IFS=$old_IFS

Ou d'une manière encore plus simple, comme l'a indiqué fd0 dans les commentaires :

tr -s ':' '\n' <<<"$PATH"

Cela présente également l'avantage de ne pas avoir à se préoccuper des IFS .

En utilisant l'un des scripts scripts ci-dessus, si vous trouvez une ligne se terminant par un / vous avez trouvé le coupable.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X