GNU/Linux >> Znalost Linux >  >> Linux

Vysvětlení příkazu 'find -mtime'

Specifikace POSIX pro hledání říká:

-mtime n Primární hodnota bude vyhodnocena jako pravdivá, pokud je doba úpravy souboru odečtená od doby inicializace, dělená 86 400 (se zbývajícími vyřazenými), n .

Zajímavý je popis find dále neuvádí „čas inicializace“. Pravděpodobně je to však doba, kdy find je inicializován (spustit).

V popisech kdekoli n je použit jako primární argument, musí být interpretován jako dekadické celé číslo, kterému může předcházet znaménko plus ( '+' ) nebo mínus ( '-' ) takto:

+n Více než n .
n Přesně n .
-n Méně než n .

Můžete napsat -mtime 6 nebo -mtime -6 nebo -mtime +6 :

  • Pomocí 6 bez znaménka znamená „rovné 6 dnů staré – tedy upraveno mezi „nyní – 6 * 86400“ a „nyní – 7 * 86400“ (protože se zahazují zlomkové dny).
  • Pomocí -6 znamená „starší než 6 dní – upraveno dnem nebo později „nyní – 6 * 86400“.
  • Pomocí +6 znamená „starší než 6 dní – tedy upraveno v 'nyní - 7 * 86400' nebo dříve“ (kde 7 je možná trochu neočekávané).

V daný čas (2014-09-01 00:53:44 -4:00, kde vyvozuji, že AST je Atlantický standardní čas, a tudíž posun časového pásma od UTC je -4:00 v ISO 8601, ale + 4:00 v ISO 9945 (POSIX), ale na tom tolik nezáleží):

1409547224 = 2014-09-01 00:53:44 -04:00
1409457540 = 2014-08-30 23:59:00 -04:00

takže:

1409547224 - 1409457540 = 89684
89684 / 86400 = 1

I když jsou hodnoty 'sekund od epochy' nesprávné, relativní hodnoty jsou správné (pro určité časové pásmo někde na světě jsou správné).

n hodnota vypočítaná pro soubor protokolu 2014-08-30 je tedy přesně 1 (výpočet se provádí pomocí celočíselné aritmetiky) a +1 odmítne jej, protože je striktně > 1 srovnání (a ne >= 1 ).


+1 znamená před 2 dny. Je zaoblený.


Linux
  1. Hledání souborů v příkazovém řádku (jak na to)

  2. Úvod do příkazu diff

  3. Jak auditovat oprávnění pomocí příkazu find

  1. Jak najít soubory v CentOS 8 na příkazovém řádku

  2. Průvodce linuxovým příkazem „Najít“.

  3. Najděte verzi WordPress z příkazového řádku

  1. Je možné přenést výsledky FIND do příkazu COPY CP?

  2. Jak zkombinovat příkaz „tar“ s příkazem „najít“

  3. Jaká je správná syntaxe find -exec