Comment puis-je configurer Mac Terminal pour avoir une sortie ls en couleur ? J'utilise MacOS 10.5
Réponses
Trop de publicités?Une autre option consiste à utiliser le programme GNU ls
qui fait partie du programme 'coreutils'.
Vous pouvez l'obtenir via Rudix ou Homebrew ( brew info coreutils
)ou Macports ou Fink. Cela peut être préférable à l'utilisation d'une solution "uniquement pour Mac OS X" si vous utilisez les mêmes fichiers de configuration de l'interpréteur de commandes sur différents systèmes, ou si vous êtes déjà familiarisé avec GNU ls.
UPDATE : Je suis passé à Oh mon zsh il y a un an et c'est génial. Mon thème préféré est lambda-mod y ma version d'elle.
Combiner toutes les réponses ici est ce que j'utilise :
COLOR_RED="\033[0;31m"
COLOR_YELLOW="\033[0;33m"
COLOR_GREEN="\033[0;32m"
COLOR_OCHRE="\033[38;5;95m"
COLOR_BLUE="\033[0;34m"
COLOR_WHITE="\033[0;37m"
COLOR_RESET="\033[0m"
#git_color
function git_color {
local git_status="$(git status 2> /dev/null)"
if [[ ! $git_status =~ "working directory clean" ]]; then
echo -e $COLOR_RED
elif [[ $git_status =~ "Your branch is ahead of" ]]; then
echo -e $COLOR_YELLOW
elif [[ $git_status =~ "nothing to commit" ]]; then
echo -e $COLOR_GREEN
else
echo -e $COLOR_OCHRE
fi
}
#git_branch
function git_branch {
local git_status="$(git status 2> /dev/null)"
local on_branch="On branch ([^${IFS}]*)"
local on_commit="HEAD detached at ([^${IFS}]*)"
if [[ $git_status =~ $on_branch ]]; then
local branch=${BASH_REMATCH[1]}
echo "($branch)"
elif [[ $git_status =~ $on_commit ]]; then
local commit=${BASH_REMATCH[1]}
echo "($commit)"
fi
}
PS1='\[\033[01;32m\]\u\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]'
PS1+="\[\$(git_color)\]" # colors git status
PS1+="\$(git_branch)" # prints current branch
PS1+="\[$COLOR_BLUE\]\[$COLOR_RESET\]\$ "
export PS1
export LC_ALL=en_US.UTF-8
export CLICOLOR=1
export LSCOLORS=gxBxhxDxfxhxhxhxhxcxcx
alias ls="ls -Gp"
Oubliez tous ces codes cryptés vieux de plusieurs dizaines d'années, utilisez le panneau intégré Terminal --> Préférences.... Paramètres pour définir l'apparence par défaut et modifier les couleurs ANSI à votre convenance. Vous pouvez également définir la police de caractères. Je préfère Menlo 12pt. C'est ainsi qu'un simple citoyen peut le faire, et éviter toutes les folles lignes de commande, les manières unixiennes de faire les choses comme d'autres posters l'ont suggéré.
Je pense que toute personne assez expérimentée pour savoir que ls
peut avoir une sortie colorée est également capable d'exécuter quelques commandes Unix pour le configurer correctement.
Tout simplement ajouter la ligne suivante à ~/.bash_profile
archivo:
export PS1=" \[\033[34m\]\u@\h \[\033[33m\]\w\[\033[31m\]\[\033[00m\] $ "
Ce sont mes couleurs préférées. Vous pouvez personnaliser la couleur de chaque partie du prompt en modifiant m
codes (par exemple 34m
) qui sont des codes de couleur ANSI.
Liste des codes de couleur ANSI :
- Noir : 30m
- Rouge : 31m
- Vert : 32m
- Jaune : 33m
- Bleu : 34m
- Violet : 35m
- Cyan : 36m
- Blanc : 37m
- Réponses précédentes
- Plus de réponses
6 votes
C'est une excellente question... J'ai toujours pensé que ls --color (à la gnu ls) devait fonctionner partout. MacOS n'accepte pas --color, donc j'ai supposé que la sortie colorée n'était pas du tout une option.
0 votes
cyberciti.biz/faq/apple-mac-osx-terminal-color-ls-output-option