Como posso encontrar os últimos 10 arquivos modificados

Como posso encontrar os últimos 10 arquivos modificados

Estou na pasta raiz e preciso encontrar os últimos 10 arquivos modificados apenas desta pasta. Cada vez que coloco -mtime como meu professor disse, recebo 10 dias. Preciso dos últimos 10 arquivos modificados, não dos últimos 10 dias. Eu tentei encontrar meu tempo, meu tempo canalizado com cauda. Recebo uma longa lista de todos os arquivos modificados nos últimos 10 dias. Preciso apenas dos últimos 10 arquivos modificados do diretório raiz.

Responder1

ls -t | headdeve funcionar, desde que os nomes dos arquivos não incluam novas linhas.

ls -tclassifica por tempo, com os arquivos mais recentes primeiro. headmantém apenas as 10 primeiras linhas.

Se quiser mais detalhes, você pode usar ls -lt, mas isso precede uma linha extra com o tamanho total, então você precisa de ls -lt | head -n 11.

Se quiser incluir arquivos ocultos, você pode usar ls -At | head. ( ls -A, ou --almost-allpara GNU ls, inclui arquivos ocultos, exceto .e ...)

Observe que isso fornece os 10 arquivos mais recentes de qualquer tipo, incluindo diretórios, não apenas arquivos normais.

Responder2

Em zsh, para os 10 arquivos regulares no diretório de trabalho atual ou abaixo que foram modificados pela última vez:

ls -ldt -- **/*(D.om[1,10])

Em outros shells, mas supondo que você esteja em um sistema GNU recente:

find . -type f -printf '%T@:%P\0' |
  LC_ALL=C sort -zrn |
  LC_ALL=C sed -z 's/^[^:]*://;10q' |
  xargs -r0 ls -ltd --

Se você não quiser considerar arquivos em subdiretórios, remova **/in zshou -maxdepth 1adicione findafter ..

Para excluir arquivos ocultos, remova o Dqualificador glob zshou altere a findlinha para:

LC_ALL=C find . -name '.?*' -prune -o -type f -printf '%T@:%P\0' |

Ou se também excluir arquivos em subdiretórios:

LC_ALL=C find . -maxdepth 1 ! -name '.*' -type f -printf '%T@:%P\0' |

Eles não fazem suposições sobre quais caracteres ou não caracteres os caminhos dos arquivos podem conter.

informação relacionada