例如,echo -e "\001\033[5m\033[7m\002${var}\001\033[0m\002"
如果变量以非数字字符开头,则它可以正常工作。但是,如果变量以数字开头,则它会失败,例如 var = 5,则字符串为“\001\033[5m\033[7m\0025\001\033[0m\002"`,出于某种原因,它不会闪烁 5,屏幕上有一个空白行
例如,echo -e "\001\033[5m\033[7m\002${var}\001\033[0m\002"
如果变量以非数字字符开头,则它可以正常工作。但是,如果变量以数字开头,则它会失败,例如 var = 5,则字符串为“\001\033[5m\033[7m\0025\001\033[0m\002"`,出于某种原因,它不会闪烁 5,屏幕上有一个空白行
虽然可能有某种方法可以转义前导数字,但
${var}
我还是选择用 替换echo -e
,printf
例如:注意:
\n
最后添加以确保我们得到相同的效果echo
您可以使用
tput
它来避免硬编码序列并使其更具可读性保存
\002
在 var 中: