在Linux中,strings命令用于从二进制文件中提取可打印的字符串。如果你想显示这些字符串的ASCII码,可以使用xxd或od命令结合strings命令来实现。
以下是两种方法:
xxd命令strings命令提取可打印字符串。xxd命令,并指定-p选项以十六进制格式输出。awk或其他文本处理工具将十六进制转换为ASCII码。示例:
strings your_binary_file | xxd -p | awk '{ for(i=0; i<NF; i+=2) printf("%c", strtonum("0x" substr($0, i, 2))); print "" }'
od命令strings命令提取可打印字符串。od命令,并指定-An和-tx1选项以十进制格式输出每个字符的ASCII码。示例:
strings your_binary_file | od -An -tx1 | tr -d ' \n'
strings your_binary_file:从your_binary_file中提取可打印字符串。xxd -p:将输入数据转换为十六进制格式,每两个字符表示一个字节。awk '{ for(i=0; i<NF; i+=2) printf("%c", strtonum("0x" substr($0, i, 2))); print "" }':使用awk将十六进制转换为ASCII码。od -An -tx1:将输入数据转换为十进制格式,每个字符占一行。tr -d ' \n':删除多余的空格和换行符,使输出更紧凑。通过这些方法,你可以将strings命令提取的可打印字符串转换为对应的ASCII码。