我有一个包含 9k 分区的表,我想删除其中大约 1200 个(代表 3 天(
我想将这 3 天的hadoop fs -rm
和正则表达式结合起来,类似于pr_load_time=2017070([1-4])(d+)
.
分区看起来像这样(我只想在这里匹配前两个(
pr_load_time=20170701000317
pr_load_time=20170704133602
pr_load_time=20170705000317
pr_load_time=20170706133602
这样的事情可能吗?我正在考虑将分区与awk匹配并使用xargs,但是删除如此大量的文件似乎非常缓慢。
我想上面的评论可以解决您的问题,但是您可以在下面尝试以防万一
/hdfs path/pr_load_time={20170701000317,20170704133602,20170705000317,..}
或类似的东西
/hdfs path/pr_load_time=201707{01000317,04133602,05000317,..}
这可以在单个命令中组合不同的模式
/hdfs path/pr_load_time=201707{01*,04*,05*,..}