在bash中计算字符串的长度

Har*_*rry 1 bash

我有以下十六进制字符串

VAR='\x45\x8A\xC8\x4E\x58\xBB\x16\x17\x55\x96\xA5\x26\xD1\xDA\x56\x04\xA7\xBD\x6F\xA5'
Run Code Online (Sandbox Code Playgroud)

我需要找到它的字节数,它是 20。但是如果我输入

length=${#VAR}
echo "var length: "$length
Run Code Online (Sandbox Code Playgroud)

我得到80。我该怎么办?非常感谢您提前!

che*_*ner 6

它没有 20 个字节;它有 80 个,因为\x45是 4 个单独的字符,而不是代表单个字节的文字。会给你你期望的 20 字节字符串。VAR=$'\x45...'