八进制ASCII码特殊字符列表:
041 ! 042 " 043 # 044 $ 045 % 046 & 047 '
050 ( 051 ) 052 * 053 + 054 , 055 - 056 . 057 /
072 : 073 ; 074 < 075 = 076 > 077 ?
使用方法:
echo -e '\047'
# 打印输出一个单引号
当需要同时打印单引号、双引号和$符等等的时候,该方法比较方便
存在问题,如果特殊字符后面跟数字,则会造成歧义:
echo -e '\047 \0471'
# 第一个正常打印单引号,第二个打印9
简单应用举例:
echo -en 'mysq.host: \047 ';echo -e '192.168.77.10\047'|cat -A
# 使用\047打印一个单引号,cat -A 最终拼出来一个$符号
echo -en 'mysq.host: \047 \b';echo -e '192.168.77.10\047'|cat -A
# 单引号后面有一个空格,可以使用\b退格消除掉
su - oracle -c "echo -ne '\047';echo -e '192.168.1.1\047'"
# su命令使用双引号引起来,echo 使用单引号引起来,又要打印单引号,则使用\047拼出
su - oracle -c "echo -ne '\042';echo -e '192.168.1.1\042'"
# 同样道理,使用\042拼双引号