我想要一个hdfs目录中最新更新的文件。代码应该基本上在目录和子目录之间循环,并用文件名获取最新的文件路径。 find /tmp/sdsa -type f -print0 | xargs -0 stat --format '%Y :%y %n' | sort -nr | cut -d: -f2- | head
上面的代码适用于本地文件系统。我可以从hdfs获取日期、时间和文件名,但是如何使用这3个参数获取最新的文件?
这是我尝试的代码: hadoop fs -ls -R /tmp/apps | awk -F" " '{print $6" "$7" "$8}'
任何帮助都将不胜感激。
提前谢谢。
2条答案
按热度按时间pxy2qtax1#
命令如下:
你的剧本本身就足够好了。hadoop以yyyy-mm-dd hh24:mi:ss格式返回日期,因此您可以按字母顺序对它们进行排序。
kupeojn62#
这个对我有用:
hadoop fs -ls -R /tmp/app | awk -F" " '{print $6" "$7" "$8}' | sort -nr | head -1 | cut -d" " -f3
输出是整个文件路径。