![bash echo -e "\e[1mFOO" 返回正常文本](https://linux22.com/image/1538039/bash%20echo%20-e%20%22%5Ce%5B1mFOO%22%20%E8%BF%94%E5%9B%9E%E6%AD%A3%E5%B8%B8%E6%96%87%E6%9C%AC.png)
我很确定我在编写 bash 脚本时做错了什么。感谢其他人,我能够使用 echo 来制作文本大胆的... 但从那时起所有内容也都是粗体。如何关闭echo -e "\e[1mFOO"
以便将来的echo print read etc
命令本身不再是粗体?
如果已经有人使用相同的关键词询问并回答了这个问题,我深感抱歉,我只是向我展示了有关如何使文本加粗的所有问题/指南,但没有一个展示如何将其恢复正常。
举个例子,以防我表达不清楚我在问什么
输入:
#!/bin/bash
echo "This is normal"
echo -e "\e[1mThis is bold"
echo "Even though there is no '-e' operator, this is still bold but I want it normal"
输出:
这个是正常的
这是大胆的
即使没有“-e”运算符,这仍然是粗体,但我希望它恢复正常
多谢!
答案1
将文本输出改为粗体后,您必须将控制台重置为正常文本输出:
#!/bin/bash
echo "This is normal"
echo -e "\e[1mThis is bold"
tput sgr0 #Reset text attributes to normal without clear.
echo "This" #NORMAL
如果 tput 在您的环境中不起作用,您也可以将颜色代码恢复正常:
#!/bin/bash
echo "This is normal"
echo -e "\e[1mThis is bold"
echo -e "\e[0mThis is normal again"