背景
需要在kafka日志文件中搜索数据以进行验证。不尝试使用命令行使用者。
工具
使用转储日志分段工具
问题
--files参数要求将文件分隔为,
--files <file1, file2, ...> REQUIRED: The comma separated list of
data and index log files to be dumped有没有办法查看目录下的所有文件?尝试了*log,但它只在目录中的第一个文件中显示。
或
编写一个小程序是唯一的选择吗?
发布于 2017-03-31 18:12:44
我删掉了一些随意的脚本,这些脚本对我的目的起了作用。
检查每个文件的数据
#!/bin/bash
dirname="$1"
tosearch="$2"
files=""
if [[ -s $dirname ]] ; then
for filename in $(ls -d $dirname/*log); do
count=$(bin/kafka-run-class.sh kafka.tools.DumpLogSegments --files "$filename" --print-data-log | grep "$tosearch" | wc -l)
echo "$filename : $count"
done
fi检查所有文件中的数据,统称为
#!/bin/bash
dirname="$1"
tosearch="$2"
files=""
if [[ -s $dirname ]] ; then
for filename in $(ls -d $dirname/*log); do
files+="$filename,"
done
newfiles=$(echo "$files" | sed 's/,$//')
count=$(bin/kafka-run-class.sh kafka.tools.DumpLogSegments --files "$files" --print-data-log | grep "$tosearch" | wc -l)
echo "$count"
fihttps://stackoverflow.com/questions/42986519
复制相似问题