我在路径:/user/a中有一个hdfs目录a如何删除文件中所有大小为零的文件?
p5cysglq1#
这也许有用 hdfs dfs -ls -R /path/to/directory/ | grep part- | awk '{ if ($5 == 0) print $8 }' | xargs hdfs dfs -rm
hdfs dfs -ls -R /path/to/directory/ | grep part- | awk '{ if ($5 == 0) print $8 }' | xargs hdfs dfs -rm
y1aodyip2#
仅删除文件:
hdfs dfs -rm $(hdfs dfs -ls -R /user/A/ | grep -v "^d" | awk '{if ($5 == 0) print $8}')
首先测试你得到什么,因为有很多hdfs格式,可能有元数据或0字节大小的文件(比如parquet..success,..temporary等等)
hdfs dfs -ls -R /user/A/ | grep -v "^d" | awk '{if ($5 == 0) print $8}'
2条答案
按热度按时间p5cysglq1#
这也许有用
hdfs dfs -ls -R /path/to/directory/ | grep part- | awk '{ if ($5 == 0) print $8 }' | xargs hdfs dfs -rm
y1aodyip2#
仅删除文件:
首先测试你得到什么,因为有很多hdfs格式,可能有元数据或0字节大小的文件(比如parquet..success,..temporary等等)