Como listar arquivos sem diretórios com tempo específico

1

Eu quero listar todos os meus arquivos a partir do meu diretório pessoal criado ou atualizado nas últimas 10 horas.

ls -l | find /home/$user -mmin -600 | grep -v '^d'

Eu tentei isso, mas isso me deu um resultado errado.

    
por amina ibrahim 04.12.2017 / 22:57

2 respostas

1

Não há necessidade de ls -l . Sua linha deve ser, por exemplo, se você quiser arquivos com no máximo 600 minutos:

find /home/$USER -mmin -600 | grep -v '^d'

não sei por que você quer deixar de fora todos os arquivos que começam com d, mas é isso que você deve saber. se você quiser procurar por diretórios, seu comando deve ser:

find /home/$USER -type d -mmin -600

e se você quiser apenas que todos os arquivos sejam alterados no momento:

find /home/$USER -type f -mmin -600

De manpage para o comando find

  

-mmin n

   File's data was last modified n minutes ago
     

Argumentos numéricos podem ser especificados como

   +n     for greater than n,

   -n     for less than n,

   n      for exactly n.
    
por Videonauth 04.12.2017 / 23:25
3

use -not -type d em vez de grep -v '^d'

find /home/$USER -mmin -600 -not -type d

ou simplesmente -type f

    
por FaxMax 04.12.2017 / 23:32