echo - 输出文本与变量
echo 用于向标准输出写入文本或变量值。
基本语法
echo [OPTION]... [STRING]...常用参数
-n:不输出末尾换行符。-e:解释反斜杠转义序列。-E:不解释反斜杠转义序列。
不同 Shell 对 echo 选项和转义序列的处理可能不同。需要可移植、可预测的格式化输出时,优先使用 printf。
转义示例
# 不解释 \n
echo 'abc\n'
# 将 \n 解释为换行
echo -e 'abc\n'常见转义序列:
\a:响铃。\b:退格。\c:停止继续输出。\f:换页。\n:换行。\r:回到行首。\t:水平制表符。
Shell 字符串截取
下面是 Shell 的参数展开语法,不是 echo 自身的功能:
value='1234567'
# 删除最后一个字符
echo "${value%?}"
# 删除最后两个字符
echo "${value%??}"
value='123456ABC'
# 获取最后一个字符
echo "${value: -1}"ANSI 颜色
printf '\033[31m红色文字\033[0m\n'
printf '\033[42;37m绿底白字\033[0m\n'常用前景色编号为 30 至 37,常用背景色编号为 40 至 47。\033[0m 用于重置显示样式。