Způsoby platby Abuse

Jak najít nové soubory v systému Linux

27.02.2021, 20:44

Často nastávají situace, kdy potřebujete zobrazit nedávno vytvořené, nové soubory v operačním systému. Často to potřebuje správce systému, který vytvořil konfigurační soubor a pak jednoduše zapomněl, kde byl uložen. Potřeba vyhledat nové soubory může vzniknout také proto, že potřebujete zjistit, zda se soubor nedávno změnil, nebo ne. Obecně mohou být situace velmi různé. Výhodou operačního systému Linux je, že tradičně nabízí několik způsobů, jak určitý problém vyřešit.

Použití nástroje Najít

Nejjednodušším a nejběžnějším způsobem, jak v Linuxu najít nové soubory, je nástroj Najít. V závislosti na aktuálních potřebách se mu předávají různé parametry, například můžete vyhledávat soubory pouze v určitém rozmezí kalendářních měsíců nebo dnů, podrobnosti o tom, jak to lze provést, najdete níže.

Soubory se zobrazují v adresářích a podadresářích a jsou seřazeny:

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

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

Jak ale vidíte, výsledek je poměrně působivý, nové soubory není možné z celého seznamu rozpoznat. Proto musíme použít jiný příkaz:

$ find /etc -type f -mmin -120

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

Tímto příkazem určíme, že se v systému mají hledat pouze soubory, které byly vytvořeny během poslední hodiny.

Pokud je třeba pokrýt poslední dva dny, zadejte následující příkaz:

$ find /etc -type f -mtime -2

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

Někdy není potřeba hlouběji pronikat do podadresářů třetí úrovně, proto pro vyloučení této akce musíme použít speciální volbu maxdepth:

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

Můžeme zobrazit všechny nové soubory vytvořené v systému Linux za posledních sedm dní, ale s tím, že poslední tři dny by neměly být brány v úvahu:

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

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

Tyto příkazy vypíší cestu k souboru, ale pro zobrazení atributů musíme použít speciální volbu --exec. Dále vypíšeme atributy každého nového souboru pomocí nástroje ls:

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

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

Pokud se vám tento příkaz zdá příliš nepřehledný a složitý, můžete použít jiný:

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

Утилита xargs

Zde již použijeme jiný nástroj, xargs. Nástroj find také umožňuje najít soubory novější než konkrétní soubor. Vytvořme například referenční soubor:

$ touch /tmp/test

Nyní vyhledáme všechny novější soubory v kořenovém adresáři, které byly vytvořeny po něm:

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

Přejděme k další metodě.

Použití LS

Tato metoda vyhledávání nových souborů je mnohem jednodušší než předchozí, takže ji lze doporučit linuxovým začátečníkům. Příkaz ls umí také seřadit soubory v adresáři podle data vytvoření. K tomu nám stačí spustit příkaz ls:

$ ls -ltr

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

Souborů může být příliš mnoho, proto je vhodné spustit i tento příkaz:

$ ls -ltr | tail

To nejsou všechny způsoby vyhledávání nových souborů, ale stačí k rychlému a efektivnímu provedení práce. Jak vidíte, základní vyhledávací příkazy find a ls mohou být ještě flexibilnější, pokud je zkombinujete s příkazy sort, tail a grep.