Приветствую всех!
Подскажите пожалуйста, почему следующая команда не выводится в цвете?
echo "\033[31m HELLO!"Настоятельно просим вас при общении соблюдать Правила форума и законы РФ. Наша тематика вне политики, поэтому воздержитесь от обсуждения ситуации на Украине и связанных с ней событий, независимо от того, какую сторону вы поддерживаете.
Также напоминаем, что наш форум находится в доменной зоне .ru, физически расположен на российских серверах и мы соблюдаем действующее законодательство России. Любые сообщения о политике будут удаляться.
Linux Forum → Free и другие BSD → Как заставить команду echo выводить в цвете?
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Приветствую всех!
Подскажите пожалуйста, почему следующая команда не выводится в цвете?
echo "\033[31m HELLO!"А так? 
Так тоже ч\б цвет.
Подскажите пожалуйста, почему следующая команда не выводится в цвете?
echo-control-characters (On)
When set to On, on operating systems that indicate they support it, readline echoes a character corre‐
sponding to a signal generated from the keyboard.
<skip>
echo [-neE] [arg ...]
Output the args, separated by spaces, followed by a newline. The return status is always 0. If -n is
specified, the trailing newline is suppressed. If the -e option is given, interpretation of the fol‐
lowing backslash-escaped characters is enabled. The -E option disables the interpretation of these
escape characters, even on systems where they are interpreted by default. The xpg_echo shell option
may be used to dynamically determine whether or not echo expands these escape characters by default.
echo does not interpret -- to mean the end of options. echo interprets the following escape sequences:
\a alert (bell)
\b backspace
\c suppress further output
\e an escape character
\f form feed
\n new line
\r carriage return
\t horizontal tab
\v vertical tab
\\ backslash
\0nnn the eight-bit character whose value is the octal value nnn (zero to three octal digits)
\xHH the eight-bit character whose value is the hexadecimal value HH (one or two hex digits)
скажите, ваша религия запрещает читать маны?
тогда на винфак пожалуйста.
drBatty, это же фряха!
Ciber SLasH, дело в том, что используемый в FreeBSD по умолчанию шелл csh не умеет "раскрашивать" вывод echo, зато это умеет bash, которым привык пользоваться я, например. Потому у меня вывод получился цветным, а у Вас остался ч/б.
drBatty, религия здесь не причём. Ман по команде echo читал. Вот только не догадался, почитать ман про csh.
И bash я не использую, пока всё по умолчанию. И к чему этот сарказм не понятно. Люди задают вопросы, потому, что они не смогли сами найти ответ в кратчайшие сроки. Почему нельзя просто ответить по-дружески, дать направление, ссылку а не сразу указывать новичкам на их ламерство. Все когда-то были ламерами в чём-то. Я могу разбираться в чём-то лучше кого-то, но я не говорю никому тупо RTFM и не возвышаю себя над другими.
Remedy, благодаря сарказму drBatty я догадался почитать ман по csh и там нашёл следующее:
Special shell variables
echo_style (+)
The style of the echo builtin. May be set tobsd Don't echo a newline if the first argument is `-n'.
sysv Recognize backslashed escape sequences in echo strings.
both Recognize both the `-n' flag and backslashed escape
sequences; the default.
none Recognize neither.Set by default to the local system default. The BSD and System
V options are described in the echo(1) man pages on the appro-
priate systems.
вставил в ~/.cshrc строку set echo_style = both
и цвет появился. Хотя, как сказано в мане про echo_style: both, the default - получается both нифига не дефолт.
Только бэкслеши нужно экранировать, т.е. комнда выглядит так:
echo \\e[31m Hello! \\033[0mЗЫ: \e и \033 - одно и тоже
скажите, ваша религия запрещает читать маны?
тогда на винфак пожалуйста.
Дмитрий, все хочу задать Вам вопрос и все как-то не получалось...
У Вас мама был? Папа был? А почему злой как собака?
drBatty, религия здесь не причём. Ман по команде echo читал. Вот только не догадался, почитать ман про csh.
И bash я не использую, пока всё по умолчанию. И к чему этот сарказм не понятно. Люди задают вопросы, потому, что они не смогли сами найти ответ в кратчайшие сроки. Почему нельзя просто ответить по-дружески, дать направление, ссылку а не сразу указывать новичкам на их ламерство. Все когда-то были ламерами в чём-то. Я могу разбираться в чём-то лучше кого-то, но я не говорю никому тупо RTFM и не возвышаю себя над другими.
Вы, судя по количеству сообщений, -- новичек на нашем форуме. Не обращайте на DrBatty много внимания. У него мозги варят, это факт. Но он так периодически сдуривает. И это тоже факт. Печальный факт.
Так что примите наши извинения, а в следующий раз делайте скидочку на неполноценность Дока. Он парень башковитый, но дурак. Что делать. Это не лечиться. Приходится терпеть его закидоны.
И bash я не использую, пока всё по умолчанию. И к чему этот сарказм не понятно. Люди задают вопросы, потому, что они не смогли сами найти ответ в кратчайшие сроки. Почему нельзя просто ответить по-дружески
да я как-бы не просто написал RTFM, а указал точное название FM, и даже процитировал строчки из него. Причём как раз те, что дают вам ответ на ваш вопрос. Уж извините, забыл что во фряхе по дефолту csh. Используйте bash - делов-то? ЕМНИП во фряхе он есть, а стало-быть достаточно просто выполнить
/bin/bash
и всё получится. 
благодаря сарказму drBatty я догадался почитать ман по csh и там нашёл следующее:
ну вот видите? а написал-бы я просто строчку, вы-бы так ничего и не поняли. Вот на винфаке я-бы так и сделал - просто-бы дал готовое решение. Но мы не на винфаке, и я даю вам нечто большее - МЕТОД. Как видите, мой метод работает, и позволяет решить проблему в любой *NIX системе.
both, the default - получается both нифига не дефолт.
не. раз написано дефолт - значит дефолт. Посмотрите в /etc/rc.d/ стартовые скрипты - наверняка там изменено поведение по умолчанию. Кроме того, оно может меняться при логине.
Startup and shutdown
A login shell begins by executing commands from the system files /etc/csh.cshrc and /etc/csh.login. It then
executes commands from files in the user's home directory: first ~/.tcshrc (+) or, if ~/.tcshrc is not found,
~/.cshrc, then ~/.history (or the value of the histfile shell variable), then ~/.login, and finally ~/.cshdirs
(or the value of the dirsfile shell variable) (+). The shell may read /etc/csh.login before instead of after
/etc/csh.cshrc, and ~/.login before instead of after ~/.tcshrc or ~/.cshrc and ~/.history, if so compiled; see
the version shell variable. (+)
Дмитрий, все хочу задать Вам вопрос и все как-то не получалось...
у меня всё хорошо. 
чё-то злой был...
ну хочет человек быстрой помощи, сложно в мане слеш набрать?
Но он так периодически сдуривает. И это тоже факт. Печальный факт.
Так что примите наши извинения, а в следующий раз делайте скидочку на неполноценность Дока. Он парень башковитый, но дурак. Что делать. Это не лечиться. Приходится терпеть его закидоны.
спасибо 
пойду плюсану что-ли
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Linux Forum → Free и другие BSD → Как заставить команду echo выводить в цвете?
Форум работает на PunBB, при поддержке Informer Technologies, Inc