Вывод эха отличается от ожидаемого форматированного вывода - PullRequest
0 голосов
/ 29 ноября 2018

Я использую следующее форматирование для эха Screenshot of the terminal appearance

Он должен выводить текст как жирный, так и подчеркнутый, но вместо того, чтобы выделять его жирным шрифтом, он дает «более яркий»вариант цвета и принимает подчеркнутый код (4), как если бы он был голубым, в результате чего получается светло-голубой текст.

Я использую Cygwin's Bash на ПК с Windows 7.

Редактировать: IЯ нашел ссылку, которая имеет отношение к моему случаю, но я не уверен, как это применимо, поскольку они используют bash для обновления Windows 10, пока я использую Cygwin , введите описание ссылки здесь

Ответы [ 2 ]

0 голосов
/ 30 ноября 2018

Кажется, что вы запускаете bash через старый cygwin.bat, поэтому вы используете консоль Windows в качестве терминала, а не через Mintty по умолчанию, который является более продвинутым терминалом.

По умолчанию установка Cygwin устанавливаетсязапись «Терминал Cygwin» в меню Windows

Содержимое пункта меню выглядит как

C:\cygwin64\bin\mintty.exe -i /Cygwin-Terminal.ico -

с путем, подобным

C:\cygwin64\bin

Эти элементы могут бытьтакже воссоздан на последнем шаге запуска установки cygwin.Имеются две записи:

□ Создать значок на рабочем столе
□ Добавить значок в меню «Пуск»

Если вы включите их, оба будут воссозданы

0 голосов
/ 29 ноября 2018

У меня есть это в моем профиле:

## NORMAL
export NORMAL=$(tput sgr0)

## FOREGROUND
export FGBLACK=$(tput setaf 0)
export FGRED=$(tput setaf 1)
export FGGREEN=$(tput setaf 2)
export FGYELLOW=$(tput setaf 3)
export FGBLUE=$(tput setaf 4)
export FGMAGENTA=$(tput setaf 5)
export FGCYAN=$(tput setaf 6)
export FGWHITE=$(tput setaf 7)
export FGBRIGHT=$(tput bold)
export FGNORMAL=$(tput sgr0)
export FGBOLD=$(tput bold)

## BACKGROUND
export BGBLACK=$(tput setab 0)
export BGRED=$(tput setab 1)
export BGGREEN=$(tput setab 2)
export BGYELLOW=$(tput setab 3)
export BGBLUE=$(tput setab 4)
export BGMAGENTA=$(tput setab 5)
export BGCYAN=$(tput setab 6)
export BGWHITE=$(tput setab 7)

## SHAPE
export SHUNDERLINE=$(tput smul)
export SHBOLD=$(tput bold)
export SHSBOLD=$(tput smso)

Так что я могу легко использовать его в командной строке или в моих скриптах.Например:

#!/bin/bash

echo "This is ${FGRED}foreground red${NORMAL}"
echo "This is ${BGRED}background red${NORMAL}"
echo "This is ${FGYELLOW}${BGRED}background red and foreground yellow${NORMAL}"
echo "This is ${SHUNDERLINE}underlined${NORMAL}"
echo "This is ${FGCYAN}${SHUNDERLINE}cyan underlined${NORMAL}"
echo "This is ${SHBOLD}bold${NORMAL}"
echo "This is ${SHUNDERLINE}${SHBOLD}underlined bold${NORMAL}"
echo "This is ${FGBLUE}${SHBOLD}blue bold${NORMAL} and this ${FGBLUE} normal blue${NORMAL}"
echo "This is ${SHSBOLD}standout bold${NORMAL}"

Что приводит к следующим результатам:

enter image description here

Надеюсь, это полезно для вас!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...