Maksutavat Abuse

Kuinka löytää uusia tiedostoja Linux-järjestelmässä

27.02.2021, 20:44

Usein on tilanteita, joissa sinun on tarkasteltava käyttöjärjestelmässä äskettäin luotuja, uusia tiedostoja. Tätä tarvitsee usein järjestelmänvalvoja, joka on luonut määritystiedoston ja sitten yksinkertaisesti unohtanut, mihin se oli tallennettu. Tarve etsiä uusia tiedostoja voi syntyä myös siksi, että haluat nähdä, onko tiedosto muuttunut äskettäin vai ei. Yleensä tilanteet voivat olla hyvin erilaisia. Linux-käyttöjärjestelmän etuna on, että se tarjoaa perinteisesti useita tapoja ratkaista tietty ongelma.

Find-apuohjelman käyttäminen

Helpoin ja yleisin tapa etsiä uusia tiedostoja Linuxissa on Find-apuohjelma. Ajankohtaisista tarpeista riippuen sille välitetään erilaisia parametreja, esimerkiksi voit etsiä tiedostoja vain tietyllä kalenterikuukausien tai -päivien alueella, katso alla lisätietoja siitä, miten tämä voidaan tehdä.

Tiedostot näytetään hakemistoissa ja alihakemistoissa ja lajitellaan:

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

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

Mutta kuten näet, tulos on melko vaikuttava, uusia tiedostoja ei ole mahdollista tunnistaa koko luettelosta. Siksi meidän on käytettävä toista komentoa:

$ find /etc -type f -mmin -120

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

Näin määrittelemme, että järjestelmästä haetaan vain tiedostot, jotka on luotu viimeisen tunnin aikana.

Jos on tarpeen kattaa kaksi viimeistä päivää, anna seuraava komento:

$ find /etc -type f -mtime -2

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

Joskus ei ole tarvetta kaivautua kolmannen tason alihakemistoihin, joten tämän toiminnon poissulkemiseksi on käytettävä erikoisoptiota maxdepth:

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

Voimme nähdä kaikki Linux-järjestelmässä viimeisten seitsemän päivän aikana luodut uudet tiedostot, mutta poikkeuksena on, että viimeisiä kolmea päivää ei oteta huomioon:

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

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

Nämä komennot tulostavat tiedoston polun, mutta attribuuttien tarkastelemiseksi meidän on käytettävä erikoisoptiota --exec. Seuraavaksi tulostamme jokaisen uuden tiedoston attribuutit ls-apuohjelman avulla:

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

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

Jos tämä komento on mielestäsi liian sekava ja monimutkainen, voit käyttää toista komentoa:

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

Утилита xargs

Tässä käytämme jo toista apuohjelmaa, xargs. Find-apuohjelman avulla voit myös etsiä tiettyä tiedostoa uudempia tiedostoja. Luodaan esimerkiksi viitetiedosto:

$ touch /tmp/test

Etsitään nyt kaikki uudemmat tiedostot juurihakemistosta, jotka on luotu sen jälkeen:

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

Siirrytään toiseen menetelmään.

LS:n käyttäminen

Tämä menetelmä uusien tiedostojen etsimiseen on paljon yksinkertaisempi kuin edellinen, joten sitä voidaan suositella Linuxin aloittelijoille. Komennolla ls voi myös lajitella hakemistossa olevia tiedostoja luontipäivämäärän mukaan. Tätä varten tarvitsee vain suorittaa ls:

$ ls -ltr

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

Tiedostoja voi olla liikaa, joten on viisasta suorittaa myös tämä komento:

$ ls -ltr | tail

Nämä eivät ole kaikki tavat löytää uusia tiedostoja, mutta ne riittävät tekemään työn nopeasti ja tehokkaasti. Kuten näet, perus find- ja ls-hakukomennoista voidaan tehdä vieläkin joustavampia, kun ne yhdistetään sort-, tail- ja grep-komentoihin.