bash - 如何使用 printf 打印粗体文本?

标签 bash printf

我想使用 printf 打印粗体文本。我该怎么做?

printf '%s\n' "\033[1m"bold_text"\033[0m"

没用。它显示:

\033[1mbold_text\033[0m

但是,相同的字符串在 echo -e 下工作正常:

echo -e "\033[1m"bold_text"\033[0m"
bold_text

最佳答案

正确的答案是使用 %b 格式说明符而不是 %s:

printf '%b\n' "\033[1m"bold_text"\033[0m"

来自help printf:

%b - expand backslash escape sequences in the corresponding argument

关于bash - 如何使用 printf 打印粗体文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63610540/

相关文章:

bash - 使用sed从字符串中删除子字符串

bash - ffmpeg:使用一个命令连接和编码

c++ _vsnprintf 意外的格式字符串

c - 该函数仅适用于无用的 printf

assembly - 从数据库1加载字节,但printf整数显示大量

algorithm - 确定镜像延迟(镜像是使用 rsync 和 rsh 完成的)

bash - 如何在 if 语句中使用 REGEX

c - 无符号整数溢出不 "wrap around"

r - 合并和删除*文件之间的冗余行

python - 我如何在 Python 中包装 printf C++ 函数