Find kasutamine

From ICO wiki
Jump to navigationJump to search

POOOOLIIK!!!!

Sissejuhatus

Find on üks võimsamaid UNIXi utiliite. Tema abil saab otsida teatud tingimustele vastavaid faile kataloogipuust, mis UNIXi puhul sisaldab kuni paarkümmend tuhat faili.

Ärakaranud faili on võimalik üles leida nime, nime osa, omaniku või grupi nime, loabittide, suuruse, failitüübi, loomisaja ning modifitseerimisaja järgi. find-käsku mõne teisega kombineerides on võimalik otsida faile isegi üheainsa sõna järgi, mida see fail sisaldab. Eriti spetsiifilise lahendusena õpetame faili kustutamist temas sisalduva info põhjal.

Failide otsimiseks sobib kasutada programmi Find. Otsimiseks on vaja teada kataloogi, kust otsida ning eritunnust, millega otsingut kitsendada. Tavaline on failide otsimine nime järgi. Näiteks otsime jooksvast kataloogist ja selle alla jäävatest alamkataloogidest faili nimega 'failinimi'

Näited

- 1. Find alus

  • Vaikimisi süntaks on:
 find [path] [expression] 

2. Faili leidmine nime järgi

  • Näiteks soovite leida kõik mp3 failid kasutajate kodu kataloogides. Faile saab leida käsuga:
 find /home -name "*.mp3" 
  • Kui soovite otsida näiteks *.mpg ja *.avi faile, siis kasuta järgmist:
 find /home -name "*.mpg" -o -name "*.avi" 
  • Tõstutundetu otsingud on võimalik saavutada kasutades -iname :
 find /home -iname "*.mpg" -o -iname "*.avi" 

3. Lisades mõned Põhimõtted Sellist tüüpi otsinguid kasutades tuleb liiga palju tulemusi, mistõttu on raske leida, mida te otsisite esiteks. Õnneks saab piirata otsingut, lisades kriteeriume, nagu faili suuruse ja faili muutmise kuupäeva.

  • Leiame Avi failid, mis on suuremad kui 700m. Seda võib teha:
 find /home/-name "*.avi ' -size 700 M 
  • Saab ka leida sama hulga faile, mida muudeti vähem kui 15 päeva tagasi:
 find /home/-name "*.avi '-size 700 M -mtime -15 

4. Lisades mõned meetmed Võimalik on leida Avi-faili, mis on uuem kui 15 päeva. Selle näite puhul liigutame ka faili teise asukohta: /minu/uus/film. Eeldusel, et see kataloog on juba olemas oma süsteemis.

  • Avi failid suuremad kui 700 M ja nooremad kui 15 päeva /minu/uus/film saab teha:
 find /home/-name "*.avi '-size +700 M-mtime -15-exec mv' () '/minu/uus/film/ \; 

Kasutades '()' ja \; (on tühik enne \;). "()" Vastab, et faili ei leitud, kuigi \; lõpetab exec avaldusega.

Lingid

Find1ja /Find 2 Kuidas leida faile FF FFF veel / ja veel