我在hdfs bigfile.txt中有一个大文件。我想将它的前100行复制到hdfs上的新文件中。我尝试了以下命令:
hadoop fs -cat /user/billk/bigfile.txt |head -100 /home/billk/sample.txt
它给了我一个“cat:无法写输出流”错误。我在hadoop 1上。
还有其他方法吗? (注意:将第1行100行复制到本地或hdfs上的其他文件就可以了)
答案 0 :(得分:11)
喜欢这个 -
hadoop fs -cat /user/billk/bigfile.txt | head -100 | hadoop -put - /home/billk/sample.txt
我认为“cat:无法编写输出流”只是因为 head 在读取其限制后关闭了流。有关hdfs - https://stackoverflow.com/a/19779388/3438870
的 head ,请参阅此答案