A biblioteca readline aceita
e
1lib/readline/display.c:243
2\[
(ASCII SOH e STX ) como delimitadores de texto não imprimíveis. Eles também funcionam em qualquer aplicativo que use readline .
De \]
no código-fonte bash :
243 /* Current implementation:
244 243 /* Current implementation:
244 %pre%1 (^A) start non-visible characters
245 %pre%2 (^B) end non-visible characters
246 all characters except %pre%1 and %pre%2 (following a %pre%1) are copied to
247 the returned string; all characters except those between %pre%1 and
248 %pre%2 are assumed to be 'visible'. */
1 (^A) start non-visible characters
245 %pre%2 (^B) end non-visible characters
246 all characters except %pre%1 and %pre%2 (following a %pre%1) are copied to
247 the returned string; all characters except those between %pre%1 and
248 %pre%2 are assumed to be 'visible'. */
As bash -specific
e
1y.tab.c:7640
2printf
são de fato traduzidas para echo -e
e
at
1
2\x01
142\x02
.
Observação: se você usar %code% ou %code% de bash , e se o texto tiver %code% ou %code% imediatamente antes de um número, você atingirá um > bash bug que faz com que ele coma um dígito demais ao processar octal escapes - ou seja, %code% será interpretado como octal 014 (seguido por ASCII "2"), em vez do correto octal 01 (seguido por ASCII "42"). Por esse motivo, use as versões hexadecimais %code% e %code% .