Я получаю доступ к серверу Ubuntu 10.04.2 LTS через SSH из OSX. Недавно цвета перестали работать. Я думаю, что это произошло во время установки / устранения неполадок RVM, но я не уверен.
В .bashrc я не комментировал force_color_prompt=yes
, а при запуске env | grep TERM
получаю TERM=xterm-color
. Но до сих пор нет цветов.
Любые идеи? Благодарность!
Вот вывод cat .bashrc
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples
# If not running interactively, don't do anything
[ -z "$PS1" ] && return
# don't put duplicate lines in the history. See bash(1) for more options
# ... or force ignoredups and ignorespace
HISTCONTROL=ignoredups:ignorespace
# append to the history file, don't overwrite it
shopt -s histappend
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000
# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize
# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then
debian_chroot=$(cat /etc/debian_chroot)
fi
# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color) color_prompt=yes;;
esac
# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
force_color_prompt=yes
if [ -n "$force_color_prompt" ]; then
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
# We have color support; assume it's compliant with Ecma-48
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
# a case would tend to support setf rather than setaf.)
color_prompt=yes
else
color_prompt=
fi
fi
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
unset color_prompt force_color_prompt
# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
;;
*)
;;
esac
# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
alias dir='dir --color=auto'
alias vdir='vdir --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
fi
# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'
# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
. /etc/bash_completion
fi
[[ -s "/usr/local/rvm/scripts/rvm" ]] && . "/usr/local/rvm/scripts/rvm"
command-line
Мэтт Фордхэм
источник
источник
cat ~/.bashrc
к вашему вопросу, пожалуйста!Ответы:
Существует пример файла .bashrc по умолчанию, расположенный в / etc / skel - вы можете сделать резервную копию вашего текущего .bashrc с помощью,
mv .bashrc .bashrc.bak
а затемcp /etc/skel/.bashrc .bashrc
скопировать этот пример обратно в ваш домашний каталог. После этого откомментируйтеforce_color_prompt=yes
новый файл и добавьте[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
его в конец (последнюю строку) файла, чтобы RVM все еще работал.После этого выполните
. .bashrc
в ответ на приглашение перезагрузить ваш профиль bash, который должен снова выдать вам цветное приглашение, и протестируйте RVM с помощью команды,type rvm | head -1
которая должна вернуть текст:rvm is a function
Если это не работает, сообщите нам, используете ли вы стандартное приложение Terminal в Mac OS X и какой профиль вы используете в Terminal на вашем Mac.
источник
Цвета перестали работать, скорее всего, после того, как вы перешли на Lion из Snow Leopard .
В Lion почему-то по умолчанию терминал объявляется как « xterm-256color » вместо « xterm-color », что понимает Ubuntu.
Один из вариантов для вас, как уже упоминалось предыдущими респондентами, раскомментируйте
force_color_prompt=yes
в~/.bashrc
Другой вариант - переопределить терминал в Terminal.app как xterm-color. Вот как это сделать:
Settings
вкладку и найдите тему, которая установлена по умолчаниюAdvanced
вкладкуDeclare terminal as:
и установите его в xterm-colorВот мои настройки
ОБНОВЛЕНИЕ : Кажется, что Mountain Lion полностью удалил опцию xterm-color из выпадающего меню. Если вы делаете обновление, вы, скорее всего, сохраните старую конфигурацию, но если вы делаете новую установку, вам придется вручную редактировать файл конфигурации терминала, и для этого вам понадобится редактор списков (включенный в XCode, который требует быть установленным через App Store). Расположение файла терминала находится в ~ / Library / Preferences / com.apple.Terminal.plist , чтобы добавить опцию xterm-color, сделайте следующее:
$ open ~/Library/Preferences/com.apple.Terminal.plist
Root > Window Settings
TerminalType
ключ.TerminalType
ключ на xterm-color вручнуюисточник
Введите Ctrl+ Wи выполните поиск
force_color
, первый результат должен выделятьсяf
сразу после#
символа.Нажмите Backspaceи теперь Ctrl+ X, затем Yдля
Yes
, затем Enter.или
Теперь вы увидите цвет в терминале.
Я надеюсь, что это работает для вас.
источник
Один из вариантов, который у вас есть, - это создать
.bash_login
файл, если он еще не существует в вашем домашнем каталоге, и поместить его.bashrc
внутрь.Закройте терминал и снова откройте его - ваша проблема должна быть решена!
источник
Вместо того, чтобы пытаться заставить MacOS Terminal сообщать о TERM как о более старом xterm-цвете, вы можете изменить свой .bashrc в Linux, чтобы он распознал xterm-256color в качестве цветного клиента. Это, кажется, по умолчанию для более новых версий Ubuntu. Для этого измените эту строку:
чтобы:
Затем запустите
source .bashrc
и ваш терминал будет отображаться в цвете.источник