Ответы:
Вот как:
echo -e "text \033[1mbold\033[0m text"
Смотрите руководство по раскрашиванию скриптов .
Это невозможно сделать cat
таким образом. cat
будет просто печатать символы файла на стандартном выходе. Самое близкое, что я могу придумать, это следующее:
Если вы положите, text \033[1mbold\033[0m text
вы можете сделать
echo -e `cat test.txt`
Вы можете «закинуть» файл жирным шрифтом, выполнив подстановку команд.
echo -e "text \033[1m`cat my_file`\033[0m text"
«Подстановка команд переназначает вывод команды или даже нескольких команд; она буквально вставляет вывод команды в другой контекст».
Так что волшебная часть здесь
`cat my_file` # or $(cat my_file)
http://tldp.org/LDP/abs/html/commandsub.html
Backticks будут переносимы на устаревшие оболочки, в то время как я предпочитаю использовать $()
.