Pregunta

¿Cómo escribo caracteres que no sean ASCII usando echo? ¿Hay una secuencia de escape, como \ 012 o algo así?

Quiero agregar caracteres ASCII a un archivo usando:

echo ?? >> file
¿Fue útil?

Solución

Uso

echo -e "\012"

Otros consejos

Si le importa la portabilidad, soltará echo y usará printf (1) :

printf '\012'

En mi terminal,

printf '\012' >>output.txt

funciona tanto para la representación octal del carácter ascii como para el hexadecimal correspondiente:

printf '\xA' >>output.txt

El comando

echo -en '\012' >>output.txt

sin embargo, no funciona correctamente. Solo los hexadecimales parecen funcionar con echo -e. El -n elimina la nueva línea extra predeterminada de echo.

Tomé no ASCII para referirme a Unicode, al menos en mi caso, pero printf " \ x ## " no era suficiente para mi solución de 2 bytes, así que usé esto ligeramente sintaxis diferente en su lugar:

> printf "\u25ba"
►
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top