我正在寻找hadoop 2.x中的命令来删除hdfs中零字节的文件。 任何人都可以让我知道适当的命令。 我正在尝试在hdfs中查找零字节的文件,并将它们从目录中删除。hadoop删除零文件的文件
4
A
回答
4
for f in $(hdfs dfs -ls -R/| awk '$1 !~ /^d/ && $5 == "0" { print $8 }'); do hdfs dfs -rm "$f"; done
循序渐进:
hdfs dfs -ls -R /
- 列出HDFS中的所有文件递归
awk '$1 !~ /^d/ && $5 == "0" { print $8 }')
- 打印是不是目录,并用大小为0
for f in $(...); do hdfs dfs -rm "$f"; done
那些完整路径 - 反复删除
2
建立在Kombajn的答案,如果你有很多文件删除它将是qui cker使用xargs
。这将允许您删除多个文件,每个hdfs
命令,这是相当昂贵的。
hdfs dfs -ls -R/| awk '$1 !~ /^d/ && $5 == "0" { print $8 }' | xargs -n100 hdfs dfs -rm
相关问题
- 1. 从AWS中删除文件系统 - Hadoop
- 2. 删除空文件(零字节)
- 3. 删除文件
- 4. 删除文件
- 5. 删除文件
- 6. 删除文件
- 7. 删除文件
- 8. 删除文件
- 9. 删除文件夹中的所有文件,排除某些文件被删除
- 10. 清除文件夹 - 删除文件夹中的文件 - J2ME
- 11. 删除/删除/撤销零件
- 12. 删除APPDATA文件夹内的文件
- 13. htaccess删除文件夹的文件夹
- 14. grgit - 添加新文件并删除已删除的文件
- 15. Git的部署:在删除文件时,按文件中删除
- 16. 删除文件夹内的所有文件,但删除最后?
- 17. Hadoop&Bash:删除匹配范围的文件名
- 18. 删除hadoop上x天以前的文件
- 19. 批处理文件,删除文件,还创建删除文件的日志
- 20. Hadoop dfs.include文件
- 21. 删除文本文件
- 22. 删除文本文件
- 23. 删除文件名
- 24. 删除* .pyc文件
- 25. 删除文件,urlrewritefilter
- 26. .NET文件删除
- 27. 删除tmp文件
- 28. Powershell - 删除文件
- 29. 删除SharedPreferences文件
- 30. node.js删除文件
你介意解释这里使用的awk脚本吗? – ylabidi
@ylabidi展开Kombajn描述的内容,他打印来自'ls'的行不是以'd'(目录)开头,并且第5个字段(大小)不为0的行的字段8(文件名) – highlycaffeinated