¿Cómo escribo caracteres que no sean ASCII usando echo? ¿Hay una secuencia de escape, como \012
o algo así?¿Cómo escribo caracteres que no sean ASCII utilizando echo?
que desea anexar caracteres ASCII en un archivo mediante:
echo ?? >> file
¿Cómo escribo caracteres que no sean ASCII usando echo? ¿Hay una secuencia de escape, como \012
o algo así?¿Cómo escribo caracteres que no sean ASCII utilizando echo?
que desea anexar caracteres ASCII en un archivo mediante:
echo ?? >> file
Uso
echo -e "\012"
Si se preocupan por la portabilidad, se le cae eco y utilizar printf (1):
printf '\012'
... o, si toma la secuencia de escape de una fuente que no es de confianza, 'printf '% b' '\ 012'', para honrar tales secuencias pero no otros contenidos de cadena de formato. –
En mi terminal,
printf '\012' >>output.txt
funciona tanto para la representación octal del carácter ASCII, y el hexadecimal correspondiente:
printf '\xA' >>output.txt
el comando
echo -en '\012' >>output.txt
embargo
, no funciona correctamente. Solo los hexadecimales parecen funcionar con echo -e. -n elimina la nueva línea adicional predeterminada de echo.
_Mi_ pregunta fue en realidad sobre cómo imprimir hexadecimal a un terminal - encontré esto a través de google, y esto respondió mi pregunta muy bien. También responde la pregunta del que pregunta. Merece más puntos. – Wyatt8740
Tomé no ASCII en el sentido de Unicode, por lo menos en mi caso, pero printf "\x##"
no fue suficiente para mi solución de 2 bytes, por lo que utiliza esta sintaxis ligeramente diferente en su lugar:
> printf "\u25ba"
►
Esta funcionalidad requiere eso es completamente incompatible con POSIX (no solo una extensión, pero * activamente no permitido * por la especificación, lo que permite que no se cumplan otros distintivos que no sean '-n'), y ni siquiera será honrado en modo POSIX si' La bandera de xpg_echo' está establecida. –