写了一个简单的十六进制工具,可以把文件转化成十六进制。
// hex.c
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]) {
FILE *fp;
if ( argc == 1 ) {
fp = stdin;
} else if ((fp = fopen( argv[1], "rb")) == NULL ) {
return EXIT_FAILURE;
}
int ch;
while ( ( ch = fgetc(fp) ) != EOF ) {
printf("%02x", ch);
}
fclose(fp);
return EXIT_SUCCESS;
}
编译:
gcc hex.c -o hex
用法:
(1)转化输出
echo -n ok|hex
(2)转化文件
hex file.txt
补充
后来发现可以用以下shell命令组合完成这个功能
cat 文件名 | xxd -p | tr -d '\n'