O que significa newermt no comando find?

8

Eu sei que posso usar essa opção para encontrar arquivos entre horários específicos modificados. Mas estou curioso sobre o que isso significa?

Eu usei man find | grep newermt tentando encontrar algo. Mas eu não tenho conteúdo direto. Parece que -newer file e mtime stuff podem ter relação com ele. Mas não tenho certeza ..

Então, o que significa -newermt na verdade?

    
por Zen 25.11.2014 / 05:40

2 respostas

16

find(1) :

-newerXY reference
          Compares the timestamp of the current file with reference.   The
          reference  argument  is  normally the name of a file (and one of
          its timestamps is used for the comparison) but it may also be  a
          string  describing  an  absolute time.  X and Y are placeholders
          for other letters, and these letters select which time belonging
          to how reference is used for the comparison.

          a   The access time of the file reference
          B   The birth time of the file reference
          c   The inode status change time of reference
          m   The modification time of the file reference
          t   reference is interpreted directly as a time
    
por 25.11.2014 / 06:02
7

file ./ -mtime +n usado para obter todos os arquivos com mais de n dias
file ./ -mtime -n usado para obter todos os arquivos modificados nos últimos n dias
Agora, se você estiver usando 1 no lugar de n , você obterá arquivos modificados nas últimas 24 horas. Mas e se você quiser apenas arquivos de ontem e não nas últimas 24 horas? Aqui newermt entra em cena.

find ./ -newermt "2016-01-18" ! -newermt '2016-01-19'

dará a você todos os arquivos que forem mais recentes que a data especificada e ! excluirá todos os arquivos que forem mais recentes que a data especificada. Portanto, o comando acima fornecerá uma lista de arquivos que foram modificados em 2016-01-18.

    
por 18.01.2016 / 13:26