技术小挑战:如何使用Bash echo命令打印字符串"-e"
解决echo打印"-e"被识别为选项的问题
要让echo把"-e"当作普通字符串输出,有几种可靠的方法:
使用
--分隔命令选项与参数:echo -- -e
这是大部分Unix/Linux命令的通用做法,--之后的所有内容都会被当作普通参数,不会被解析为命令选项。使用
printf替代echo:printf "%s\n" "-e"printf不存在类似echo的选项解析问题,能稳定输出任意字符串,尤其适合处理包含特殊字符或选项格式的内容。调用独立的
echo二进制文件(而非shell内置echo):/bin/echo '-e'
部分shell的内置echo会解析-e这类选项,但系统自带的/bin/echo通常不会,直接调用它也能输出"-e"。
内容的提问来源于stack exchange,提问作者Amr Alasmer
相关产品推荐
相关产品推荐

