hdfs文件目录中查找某个字符串所在位置

最近写一个MR处理数据时,遇到某一条文件乱码,需要查找改条记录的原始数据.由于文件全部保存在hdfs上面,因此需要查看该字符串在文件中的位置.

hadoop fs -text $file |fgrep "$param" --color

参数说明:

$file 文件在hdfs上路径

$param 需要查找的字段

使用shell脚本循环遍历目录时:

for file in `hadoop fs -ls /home/test/2017-08-23 |awk '{print $NF}'`

do

echo $file hadoop fs -text $file |fgrep "0001a794d86f0844" --color

done

查看文件加上分隔符

hadoop fs -text /weblogs/all_api/20180919/* | fgrep '101485402' | cat -v 

你可能感兴趣的:(hadoop)