Spôsoby platby Abuse

Ako nájsť nové súbory v systéme Linux

27.02.2021, 20:44

Často sa vyskytujú situácie, keď potrebujete zobraziť nedávno vytvorené, nové súbory v operačnom systéme. Často to potrebuje správca systému, ktorý vytvoril konfiguračný súbor a potom jednoducho zabudol, kde bol uložený. Potreba vyhľadať nové súbory môže vzniknúť aj preto, že potrebujete zistiť, či sa súbor nedávno zmenil alebo nie. Vo všeobecnosti môžu byť situácie veľmi rôzne. Výhodou operačného systému Linux je, že tradične poskytuje niekoľko spôsobov riešenia konkrétneho problému.

Použitie nástroja Nájsť

Najjednoduchším a najbežnejším spôsobom vyhľadávania nových súborov v systéme Linux je nástroj Nájsť. V závislosti od vašich aktuálnych potrieb sa mu odovzdávajú rôzne parametre, napríklad môžete vyhľadávať súbory len v určitom rozsahu kalendárnych mesiacov alebo dní, podrobnosti o tom, ako to možno urobiť, nájdete nižšie.

Súbory sa zobrazujú v adresároch a podadresároch a sú zoradené:

$ find /etc -type f -printf '%TY-%Tm-%Td %TT %p ' | sort –r

Вывод файлов в директории и поддиректориях,

Ako však vidíte, výsledok je dosť pôsobivý, nie je možné rozpoznať nové súbory z celého zoznamu. Preto musíme použiť iný príkaz:

$ find /etc -type f -mmin -120

Файлы измененные или созданные за последние 60 минут

Takto určíme, že v systéme sa majú vyhľadávať len súbory, ktoré boli vytvorené za poslednú hodinu.

Ak je potrebné pokryť posledné dva dni, potom zadajte nasledujúci príkaz:

$ find /etc -type f -mtime -2

Файлы измененные за последние 2 дня

Niekedy nie je potrebné hĺbať do podadresárov tretej úrovne, preto na vylúčenie tejto činnosti musíme použiť špeciálnu voľbu maxdepth:

$ find /etc -maxdepth 3 -mtime -2 -type f

Môžeme vidieť všetky nové súbory vytvorené v systéme Linux za posledných sedem dní, ale s tým, že posledné tri dni by sa nemali brať do úvahy:

$ find /etc -type f -mtime -7 ! -mtime -3

Исключить последние 3 дня

Tieto príkazy vypíšu cestu k súboru, ale na zobrazenie atribútov musíme použiť špeciálnu voľbu --exec. Ďalej vypíšeme atribúty každého nového súboru pomocou nástroja ls:

$ find /etc -type f -mmin -120 -exec ls -al {} ;

Вывод подробных атрибутов новых файлов

Ak sa vám tento príkaz zdá príliš mätúci a zložitý, môžete použiť iný:

$ find /etc -type f -mmin -120 | xargs ls -l

Утилита xargs

Tu už použijeme iný nástroj, xargs. Nástroj find umožňuje nájsť aj súbory novšie ako konkrétny súbor. Vytvorme napríklad referenčný súbor:

$ touch /tmp/test

Teraz nájdite všetky novšie súbory v koreňovom adresári, ktoré boli vytvorené po ňom:

$ find / -type f -newer /tmp/test

Prejdime k ďalšej metóde.

Použitie LS

Táto metóda vyhľadávania nových súborov je oveľa jednoduchšia ako predchádzajúca, preto ju možno odporučiť začiatočníkom v Linuxe. Príkaz ls dokáže súbory v adresári zoradiť aj podľa dátumu vytvorenia. Na tento účel nám stačí spustiť príkaz ls:

$ ls -ltr

Команда ls тоже умеет сортировать файлы в директории по дате создания

Súborov môže byť príliš veľa, preto je rozumné spustiť aj tento príkaz:

$ ls -ltr | tail

Tieto spôsoby vyhľadávania nových súborov nie sú všetky, ale stačia na to, aby ste prácu vykonali rýchlo a efektívne. Ako vidíte, základné vyhľadávacie príkazy find a ls môžu byť ešte flexibilnejšie, ak ich skombinujete s príkazmi sort, tail a grep.