GNU/Linux >> Znalost Linux >  >> Linux

Najděte rozdíl pomocí mtime - a +

Od find manuálová stránka:

    Numeric arguments can be specified as

   +n     for greater than n,
   -n     for less than n,
    n     for exactly n.

  -mtime n
          File's data was last modified n*24 hours ago.  See the comments for 
          -atime to understand how rounding  affects  the  interpretation  of
          file  modification times.

   -atime n
          File was last accessed n*24 hours  ago.   When  find  figures  out  
          how  many 24-hour  periods  ago  the  file  was  last  accessed, any 
          fractional part is ignored, so to match -atime +1, a file has to have 
          been accessed at least two days ago.

Takže -mtime +5 najde tyto naposledy upravené soubory více než před 5*24 hodinami a -mtime -5 najde tyto soubory naposledy upravené méně než před 5*24 hodinami. Chcete-li odstranit soubory, které jsou starší než 5 dní, postupujte takto:

find /mnt/sdb1/tmp/ -type f -mtime +5 -exec rm {} \;

Pokud to nevrací požadovaný výsledek, může být problém s časovým razítkem. Je to správně hlášeno pro příslušné soubory? Pokud se jedná o externí USB disk, mohou být soubory vytvořeny na jiném počítači a mají jiné časové razítko, než jaké očekáváte.

Všimněte si, že jednotka je zde den, 24 hodin. Starší než 5 dní tedy znamená alespoň 6 dní staré, protože hodnota je vždy zaokrouhlena a zlomkové části se ignorují.


Linux
  1. Najděte a zkopírujte soubory

  2. Najít soubory a rozbalit je (s mezerami)

  3. Odstranění souborů pomocí rm pomocí find a xargs

  1. Jak najít soubory s oprávněními SUID a SGID v Linuxu

  2. Jak najít velké soubory linux pomocí příkazů find a du

  3. Použití find a tar se soubory se speciálními znaky v názvu

  1. Rozdíl mezi [[ $a ==Z* ]] a [ $a ==Z* ]?

  2. Rozdíl mezi Eot a Eof?

  3. Najděte soubor pomocí příkazů Najít a najít v Linuxu