gpt4 book ai didi

hadoop - 在HDFS中的文件中搜索字符串或数字范围

转载 作者:行者123 更新时间:2023-12-02 20:57:23 29 4
gpt4 key购买 nike

我想搜索HDFS并列出包含我的搜索字符串的文件,
我的第二个要求是,有什么方法可以在文件HDFS中搜索一定范围的值。

让我们假设下面是我的文件,它包含以下数据

/user/hadoop/test.txt

101,abc
102,def
103,吉
104,aaa
105,bbb

有没有可能使用范围[101-104]搜索,以便它返回包含以下数据范围的文件。

最佳答案

显示具有模式的文件名。让我们循环遍历hdfs目录,其中包含可以说的文件。

hdfs_files=`hdfs dfs -ls /user/hadoop/|awk '{print $8}'`
for file in `echo $hdfs_files`;
do
patterns=`hdfs dfs -cat $file|egrep -o "10[1-4]"`
patterns_count=`echo $patterns|tr ' ' "\n"|wc -l`
if [ $patterns_count -eq 4 ]; then
echo $file;
fi
done

现在,使用 shell 程序命令解决第二个要求“ 在文件HDFS 中搜索值范围”:-
hdfs dfs -cat /user/hadoop/test.txt|egrep "10[1-4]"

输出:-
101,abc
102,def
103,ghi
104,aaa

或仅匹配第一列
hdfs dfs -cat /user/hadoop/test.txt|egrep -o "10[1-4]"

输出:-
101
102
103
104

关于hadoop - 在HDFS中的文件中搜索字符串或数字范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44194812/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com