Shell中ASCII值和字符之间的转换
1、ASCII值转换为字符
方法一:
i=97
echo $i | awk '{printf("%c", $1)}'
方法二:
t=`printf "%x" 97`
printf "\\x$t"
或者直接
printf \\x`printf %x 97`
注意上面是的字符不是“’”,而是数字键1前面的那个字符“·”。
2、字符转换为ASCII值
方法一:
printf "%d" \'a
或者
printf "%d" "'a"
方法二:
echo "A"| tr -d "\n" | od -An -t dC
十六进制的A转化为十进制ASCII码:
1
|
printf "%d\n" "'A"
|
十六进制的A转化为十六进制ASCII码:
1
|
printf "%x\n" "'A"
|