Você pode fazer isso:
find -type f -printf '%TY-%Tm-%Td %.8TT %p\n' | sort -r | sed -r 's/(^[^ ]+ [^ ]+) (.+)/ /' | head -20
Colocar .8
entre %
e TT
modifica esse campo para limitar a 8 caracteres ( hh:mm:ss
). A sed
regex move a primeira parte da linha (para conjuntos de caracteres não espaciais com um espaço entre) até o final da linha. É necessário que o tempo esteja no início da linha para o comando sort
.
Aviso: Colocar a data após o nome do arquivo pode causar confusão se forem exibidos nomes de arquivos que contenham espaços e números. No entanto, para visualizar como um humano, e não para alimentar outro script ou programa, essa saída deve ser boa.
Caso contrário, deixe os horários na frente dos nomes dos arquivos:
find -type f -printf '%TY-%Tm-%Td %.8TT %p\n' | sort -r | head -20
EDITAR: sed
é desnecessário para aparar o segundo fracionário por @ comentário do steeldriver. Esta pode ser uma extensão GNU, mas -printf
não parece ser POSIX de qualquer forma. Além disso, bug corrigido de classificação.