Linux naredbe i vještine školjke
pronađite: Linux tražilica koja radi sve
find je najopasnija naredba na produkcijskom poslužitelju i upravo zato zaslužuje majstorstvo. Nabraja, filtrira i izvršava u jednom izrazu, a svaki klasični '/var here be dragons' incident prati pretpregled koji je netko preskočio. Navike su mehaničke: hodajte s -print ili -ls prvo, batch s -exec ... +, provucite kroz -print0 u xargs -0 i tretirajte -delete kao odluku drugog prolaza, nikad prvu skicu.
Ključne točke
- Filtrirajte prema metapodacima, a ne samo prema nazivu: -type f, -mtime +30, -size +100M i -perm -o+w locirajte čudne datoteke koje konvencije o imenovanju i izvješća o dobi propuštaju.
- Pregledajte svaki destruktivni upit: pronađite /var/www/uploads -name 'core.*' -ls prvo, zamijenite -ls za -delete tek nakon što stvarno pročitate popis; pregled je sigurnosna provjera, a ne prijedlog.
- -exec cmd {} + grupira datoteke u nekoliko poziva i pobjeđuje \; oblik na velikim stablima; ista sintaksa omogućuje 'premaži svaku podudarnu datoteku u jednom procesu' bez pogreške popisa argumenata predug.
- Null-safe izlaz prema zadanim postavkama: pronađi. -name '*.old' -print0 | xargs -0 rm -v; obične cijevi u xargs poznati su obrazac gubitka podataka onog dana kada naziv datoteke sadrži razmak.
- -xdev i -maxdepth održavaju hodanje poštenim: oni zaustavljaju traženje od praćenja u montiranju i snimkama, što spašava i vrijeme izvođenja i vaše pretpostavke o 'ovom direktoriju'.
- Vremenski prozori su precizni ako se točno pitaju: -mmin -1440 za posljednja 24 sata, -newermt '2026-01-01' za datum od datuma i zapamtite -xtime znači 'prije n puna 24-sata' prije nego što ga navedete u tiketu.
- Namjerno orežite: pronađite . -path '*/node_modules' -prune -o -name '*.js' -print preskače jedan direktorij koji inače nadmašuje ostatak stabla veličinom i vremenom.
- Očekujte izlaze različite od nule na nečitljivim direktorijima; stderr redovi poput 'Permission denied' su preskočene datoteke, a ne podaci, tako da skripte ili toleriraju izlazni status pronalaska ili ga eksplicitno provjeravaju umjesto da pretpostavljaju čiste šetnje.
Terenska bilješka
Naša najgora priča o pronalaženju - brisanju započela je uzorkom imena bez navodnika koji je druga ljuska proširila u tri riječi uzvodno od pronalaska. Pravilo je jednostavno: -prvo ispis, uvijek citiranje, i -brisanje nikada ne ulazi u naredbu kada se prvi put pokrene.
Često postavljana pitanja
Moje pronalaženje je pronašlo datoteke, ali nizvodna naredba nije učinila ništa. Zašto?
Gotovo uvijek citiranje ili prazan unos: shell je proširio uzorak prije nego što ga je find vidio ili xargs nije primio ništa. Navedite uzorke i uparite -print0 s xargs -0 svaki put.
-izbrisati ili rm nakon pronalaska?
-brisanje je izravno, brzo i neoprostivo; ne može se miješati s -exec u istom izrazu. Pokrenite uparivanje - prvo ispišite i pročitajte; to je cijela disciplina.
Zašto pronalazi pogreške u dopuštenju za ispis u direktorijima sustava?
Komponente za koje ne možete čitati pogreške ispisa u stderr i učiniti find exit različitim od nule; filtrirajte s 2>/dev/null za interaktivnu udobnost i nikada ne tumačite te pogreške kao nepostojanje datoteka.
Opet razlika između -mtime i -ctime?
-mtime je promjena sadržaja, -ctime je promjena metapodataka (dopuštenja, preimenovanje, broj tvrdih veza); chown ili potez nailazi na ctime bez dodirivanja mtimea, što zbunjuje točno jedno izvješće u četvrtini.
Kako Kinetikatech pomaže kod linux naredbe i vještine školjke
Ovo smo rješavali stotine puta: Naredbe i navike skriptiranja koje odlučuju hoće li administrator upravljati poslužiteljem ili se boriti protiv njega: pretražujte, transformirajte, prenosite i nadzirite tekst i procese s alatima koji se nalaze u svakoj osnovnoj instalaciji. S Sigurnost Linux servera i Upravljanje serverima dobivate puni krug: procjenjujemo, implementiramo, nadziremo bez prestanka i interveniramo u 30 minuta kad je potrebno.