用strings命令查看kafka-log內容 過濾二進制編碼

kafka的log內容格式還不沒怎麼了解,想快速瀏覽消息內容的話,除了使用它自帶的kafka-console-consumer.sh腳本,還能夠直接去看log文件自己,不過內容裏有部分二進制字符,經過命令看的話會有亂碼。bash

strings 命令能夠過濾掉二進制編碼,但默認它也會過濾掉中文字符,只留有英文字符。要用它的-e S參數能夠同時過濾出中文或英文字符,但仍會包含了小部分的二進制編碼,能夠在經過iconv去掉一下,能大體看到消息內容:編碼

 

$ cat log-strings.sh
#!/bin/bash

PROG_NAME=$0
LOG_FILE=$1

if [ -z "$LOG_FILE" ];then
  echo "Usage: $PROG_NAME logfile"
  exit 1
fi

strings -e S "$LOG_FILE" | iconv -c -f "UTF-8" -t "UTF-8"
相關文章
相關標籤/搜索