Existe um comando hdfs para listar os ficheiros no directório HDFS de acordo com a data-limite

Existe um comando hdfs para listar os ficheiros no directório HDFS por hora, ascendente ou descendente? Por omissão, o comando hdfs dfs -ls dá uma lista de ficheiros não Triada.

Quando procurei por respostas, o que consegui foi uma solução. Mas há alguma maneira melhor, inbuilt na linha de comando hdfs dfs?

 16
Author: daemon12, 2016-05-04

1 answers

Não, Não há outra opção para classificar os arquivos com base no datetime.
Se estiver a usar a versão hadoop

hdfs dfs -ls /tmp | sort -k6,7

E para hadoop 2.7.x comando ls , existem as seguintes opções disponíveis:

Usage: hadoop fs -ls [-d] [-h] [-R] [-t] [-S] [-r] [-u] <args>

Options:
-d: Directories are listed as plain files.
-h: Format file sizes in a human-readable fashion (eg 64.0m instead of 67108864).
-R: Recursively list subdirectories encountered.
-t: Sort output by modification time (most recent first).
-S: Sort output by file size.
-r: Reverse the sort order.
-u: Use access time rather than modification time for display and sorting.

Então você pode facilmente ordenar os arquivos:

hdfs dfs -ls -t -R (-r) /tmp 
 32
Author: Nishu Tayal, 2016-05-04 09:32:43