convertor BASH puro de la cadena de secuencia hexadecimal imprimible y
str2hex_echo() {
# USAGE: hex_repr=$(str2hex_echo "ABC")
# returns "0x410x420x43"
local str=${1:-""}
local fmt="0x%x"
local chr
local -i i
for i in `seq 0 $((${#str}-1))`; do
chr=${str:i:1}
printf "${fmt}" "'${chr}"
done
}
hex2str_echo() {
# USAGE: ASCII_repr=$(hex2str_echo "0x410x420x43")
# returns "ABC"
echo -en "'${1:-""//0x/\\x}'"
}
EXPLICACIÓN
ASCII> hexadecimal: El ingrediente secreto de la conversión eficiente de un personaje a su código ASCII es característica subyacente en printf
que, con especificadores de formato que no son cadenas, tiene carácter inicial de ser un simple o doble comillas como una orden para producir el código ASCII subyacente del siguiente símbolo. Este comportamiento está documentado en GNU BASH reference, pero también está expuesto en detalles junto con muchas otras utilidades maravillosas en la página wiki de Greg (también conocida como GreyCat) dedicada a las conversiones de char-ASCII.
Bienvenido a stackoverflow. [¿Ya has probado algo?] (Http://whathaveyoutried.com) Las personas están más ansiosas por ayudar si muestras algún esfuerzo de investigación antes de preguntar. De lo contrario, aparecerás como [vampiro de ayuda] (http://slash7.com/2006/12/22/vampires/) – JMax
posible víctima de http://stackoverflow.com/questions/5724761/ascii-hex-convert -in-bash – mrchampe