Գտեք ubuntu-ի օրինակներ: Ֆայլեր գտնել Linux-ում կամ սովորել գտնել հրամանը

Տուն / Կոշտ սկավառակներ

Որոնման խնդիր անհրաժեշտ ֆայլերկամ թղթապանակները եղել են, կա և միշտ կլինեն համապատասխան: Մարդիկ անընդհատ մոռանում են, թե որտեղ են պահել իրենց անհրաժեշտ ֆայլը, կամ Super-music.mp3: Հետեւաբար, անկախ ձեր օպերացիոն համակարգ, ֆայլերի կամ գրացուցակների որոնումը միշտ պահանջված կլինի, լինի դա Linux, Windows կամ MacOS X-ում: Որոնման գործիքները պարզապես տարբեր կլինեն: Linux-ում որոնումը կարելի է բաժանել երկու կատեգորիայի՝ գրաֆիկական և կոնսոլային: Սկսենք բոլոր lunixoid-ների հպարտությունից՝ Տերմինալից: Linux-ում փնտրելու հրաշալի ծրագիր կա, որը կոչվում է գտնել.
Գտնել հրամանի ձևաչափը հետևյալն է.
գտնել ուղին դեպի այն գրացուցակը, որտեղ ցանկանում եք որոնել - ընտրանքներ (ստեղներ)
որտեղ ուղին այն գրացուցակն է, որտեղ պետք է որոնել: Հետևյալ ուղիները կարող են նշվել.

.
- որոնել ընթացիկ գրացուցակում;
/ – որոնել արմատային գրացուցակից, այսինքն. ամբողջ համակարգում;
~ – որոնել գլխավոր գրացուցակում։

Թեեւ ճանապարհը, իհարկե, կարող է տարբեր լինել և կլինի։ Վերևում պարզապես ստանդարտ ուղիներն են:
Այսպիսով, find հրամանի ամենակարևոր տարբերակները հետևյալն են.անունը
— որոնել ֆայլերը անունով;օգտագործող
— որոնել նշված օգտվողին պատկանող ֆայլեր.խումբ
— որոնել ֆայլեր, որոնք պատկանում են նշված խմբին.պերմ
— որոնել ֆայլեր նշված մուտքի ռեժիմով.տեսակը

— որոնել որոշ տեսակի ֆայլեր:

  • Կան նաև բազմաթիվ տեսակներ.
  • բ – հատուկ բլոկային ֆայլ;
  • դ – գրացուցակ;
  • գ – հատուկ խորհրդանիշի ֆայլ;
  • f – սովորական ֆայլ;
  • l – խորհրդանշական հղում;
  • p – անվանված խողովակ;

s – վարդակից:
Չափ n - որոնել ֆայլեր, որոնց չափը n միավոր է;

-mtime -n +n – որոնել ֆայլեր, որոնք փոխել են իրենց բովանդակությունը (-) կամ ավելի քան (+) օր առաջ:
Իսկ հիմա Find հրամանի օգտագործման մի քանի օրինակ:
Ամենից հաճախ օգտագործվող տարբերակը -name-ն է, որը որոնում է ֆայլերը անունով:

Օրինակ, հրամանը.

find ~ Music -name «*.mp3»

կփնտրի բոլոր ֆայլերը (խորհրդանիշ *), որոնք ունեն .mp3 ընդլայնում Երաժշտության թղթապանակում, որը գտնվում է ձեր Գլխավոր գրացուցակում:

գտնել / -անուն «*.pdf»

Այս հրամանը կփնտրի .pdf ընդլայնմամբ ֆայլեր բոլոր գրացուցակներում, որտեղ ձեզ թույլատրվում է մուտք գործել: Եթե ​​ծրագիրը չի կարող մուտք գործել որոշ համակարգի դիրեկտորիաներ, այն կզգուշացնի ձեզ այս մասին: Եվ եթե դուք դեռ պետք է ամբողջությամբ դիտեք բոլոր դիրեկտորիաները, ապա օգտագործեք Superuser իրավունքները.

sudo find / -name «*.pdf»

կցուցարկի ֆայլերը ձեր տնային գրացուցակում՝ սկսած Foto տառերով:

«-name» անջատիչը տարբերում է մեծատառերը և փոքր տառերը. Որոնման ընթացքում այս չափանիշները անտեսելու համար անհրաժեշտ է օգտագործել «-iname» տարբերակը: Այնուհետև ծրագիրը կգտնի բոլոր ֆայլերը, որոնք բաղկացած կլինեն տառերից՝ Foto, foto կամ FOTO:

Եթե ​​ցանկանում եք, որ որոնման արդյունքը պահպանվի տեքստային ֆայլ, ապա հրամանը կստանա հետևյալ ձևը.

find ~ -name "Foto*" > results.txt

Եթե ​​դուք գիտեք ֆայլի ամբողջական անունը, ապա հրամանը կլինի.

գտնել / -name .profile

IN այս դեպքումԱմբողջ համակարգը կփնտրվի թաքնված .profile ֆայլի համար:

Դուք կարող եք որոնել ֆայլ, եթե գիտեք դրա անվան մի մասը: Այս դեպքում հրամանը կլինի հետևյալը.

գտնել /home/dm/Music/Clips/ -name «*uniform*»

Եթե ​​ցանկանում եք գտնել ֆայլեր, որոնք սկսվում են որոշակի տառերով (օրինակ՝ a-ից c), ապա ավելի լավ է օգտագործել կանոնավոր արտահայտություններ, որոնք շատ հարմար են օգտագործել.

գտնել / -անուն «*»

Այս հրամանը կկարողանա գտնել ձեր համակարգի բոլոր ֆայլերը, որոնք սկսվում են a-ից c տառերով:

Որոնեք հատուկ մուտքի ռեժիմներով ֆայլեր

Եթե ​​ցանկանում եք գտնել ֆայլեր, որոնք ունեն որոշակի մուտքի ռեժիմներ, ապա -perm տարբերակը կարող է օգնել ձեզ այս հարցում: Օրինակ, եկեք գտնենք ֆայլեր, որոնց մուտքի ռեժիմը 775 է և գտնվում է ընթացիկ գրացուցակում.

գտնել . -Պերմ 775

Որոնեք ֆայլեր ըստ օգտվողի կամ խմբի:

Որոշակի օգտվողին պատկանող ֆայլ գտնելու համար պարզապես գործարկեք հետևյալ հրամանը.

գտնել / -user comp

Այս հրամանը համակարգում կգտնի ֆայլեր, որոնք պատկանում են օգտվողի comp-ին:
Իսկ կոնկրետ խմբին պատկանող ֆայլեր գտնելու համար (օրինակ group2), գործարկեք հրամանը.

գտնել / -group group2

Գոյություն չունեցող օգտվողների կամ խմբերի ֆայլեր գտնելու համար անհրաժեշտ է օգտագործել -nouser և -nogroup տարբերակները.

գտնել / -nouser

գտնել / -ոչ խումբ

Որոնեք որոշակի տեսակի ֆայլեր

Find հրամանն ունի ևս մեկ օգտակար հատկություն, այն կարող է գտնել որոշակի տեսակի ֆայլեր. Դա անելու համար օգտագործեք -type անջատիչը: Եկեք գտնենք խորհրդանշական հղումներ /etc գրացուցակում.

գտնել /etc-տիպ l

Եկեք գտնենք դիրեկտորիաների ցանկը, որոնք առկա են /mnt/raid թղթապանակում

գտնել /mnt/raid -type d

Որոնեք ֆայլերը ըստ չափի:

-size անջատիչը թույլ է տալիս գտնել անհրաժեշտ չափի ֆայլեր:

գտնել . - Չափսը՝ 2000կ

Այս հրամանը կգտնի և կցուցադրի ֆայլեր, որոնք ունեն 2 մեգաբայթ չափ և գտնվում են ընթացիկ գրացուցակում: Իսկ եթե, օրինակ, ձեզ անհրաժեշտ է գտնել 500 կիլոբայթից փոքր ֆայլեր, ապա այս դեպքում հրամանը կլինի այսպիսին.

գտնել . Չափս - 500կ

Եթե ​​Ձեզ անհրաժեշտ է գտնել 900 մեգաբայթից մեծ ֆայլեր, հրամանը կլինի հետևյալը.

գտնել / -չափ +900Մ

-mtime անջատիչի միջոցով ֆայլերի որոնում

-mtime անջատիչը թույլ է տալիս գտնել որոշակի ժամանակահատվածում փոխված ֆայլեր:
Օրինակ, մենք խնդիր ունենք գտնել ֆայլեր, որոնք գտնվում են /home/dm/Video պանակում և փոխվել են վերջին 10 օրվա ընթացքում։

գտնել /home/dm/Video -mtime +10

Եթե ​​Ձեզ անհրաժեշտ է հակառակը, օրինակ՝ մեկ շաբաթ չփոխված ֆայլեր գտնելու համար, ապա հրամանը կլինի հետևյալը.

գտնել /home/dm/Video -7

Հաջորդ հոդվածում ես կգրեմ Ubuntu Linux-ում գրաֆիկական որոնման գործիքների մասին։

Linux-ն ունի շատ հզոր և օգտակար հրաման ֆայլերի որոնման համար՝ հրամանը գտնել. Այն ունի բազմաթիվ տարբերակներ ֆայլեր որոնելու համար, սակայն այն երբեմն դժվարություններ է առաջացնում սկսնակների համար, հիմնականում իր շարահյուսության պատճառով:

Find հրամանի օգտագործման պարզ օրինակ

Նախ, եկեք նայենք գտնել հրամանի օգտագործման պարզ օրինակին` ձեր համակարգչում config անունով ֆայլեր որոնելու համար: Մենք կփնտրենք կազմաձևման ֆայլեր՝ սկսած արմատային գրացուցակից /: Դա անելու համար դուք պետք է գործարկեք հրամանը որպես root՝ բավարար թույլտվություններ ունենալու համար, հակառակ դեպքում դուք կստանաք «Թույլտվությունը մերժված է» հաղորդագրությունները: Այսպիսով, եկեք գործարկենք հրամանը.

Գտեք / -name config -print

Հրամանը նշանակում է հետևյալը. որոնել կոնֆիգ (-name config) անունով ֆայլեր՝ սկսած / գրացուցակից (գտնել հրամանի առաջին պարամետրը) և տպել ֆայլերի անունները էկրանին (-print արգումենտ): Նշում եմ, որ որոնումը ռեկուրսիվ է, այսինքն՝ փնտրելիս որոնվում են բոլոր ենթագրքերները։ Ինչպես տեսնում եք, ամեն ինչ պարզ է. Հիմա եկեք նայենք հրամանի շարահյուսությանը և անցնենք դրա հիմնական փաստարկների ակնարկին:

գտնել հրամանի շարահյուսությունը

Find հրամանի ընդհանուր շարահյուսությունը, որը կարող եք գտնել տեղեկատու ուղեցույց, կարող է բոլորովին պարզ չթվալ, ուստի ես ձեզ ավելի դյուրընթեռնելի կտամ.

Գտեք [ուղին] [ընտրանքներ] [որոնման չափանիշներ] [գործողություններ ֆայլերի վրա]

Ճանապարհ

Որոնման ուղին կարող է լինել բացարձակ կամ հարաբերական ուղիներ, կամ բացատով բաժանված ուղիների ցանկ:

Ընտրանքներ

Գտնել հրամանի ընտրանքները թվարկված են՝ սկսած «-» նիշով, որին հաջորդում է տարբերակի անվանումը: Դիտարկենք հիմնական տարբերակները.

Որոնման չափանիշներ

Find հրամանը կարող է ունենալ որոնման բազմաթիվ չափանիշներ (նաև կոչվում են թեստեր): Յուրաքանչյուր չափանիշ ներկայացնում է հատուկ թեստային պայման, որը վերադարձնում է ճիշտ կամ կեղծ: Սա կարելի է համեմատել ծրագրավորման մեջ if դրույթի պայմանների հետ: Երբ find հրամանը մշակում է յուրաքանչյուր ֆայլ, այն հերթով ստուգում է յուրաքանչյուր չափանիշ, և եթե հաջորդ չափանիշը վերադարձնում է false, ապա find հրամանը անցնում է հաջորդ ֆայլին: Find հրամանը բավականին շատ չափանիշներ ունի, մենք կդիտարկենք դրանցից միայն մի քանիսը:

-ատիմե ՆՖայլը վերջին անգամ մուտք է գործել N օր առաջ:
-ժամանակ ՆՖայլը վերջին անգամ փոփոխվել է N օր առաջ:
- անվանման օրինակՖայլի անունը (անունի ձևանմուշ) առանց ուղի նշելու: Խորհուրդ է տրվում նախշը միշտ փակցնել չակերտների մեջ։
-ավելի նոր այլ_ֆայլՖայլը փոփոխվել է ավելի ուշ, քան other_file-ը:
- չափ [±] NՖայլի չափը հավասար է N բլոկների, եթե նշված է +N, ապա ֆայլի չափը մեծ է N-ից, -N-ն ավելի քիչ է: N-ից հետո նիշը ցույց է տալիս բլոկի չափը: b - 512 բայթ, c - բայթ, w - 2 բայթ, k - կիլոբայթ, M - մեգաբայթ, G - գիգաբայթ:
- տիպ CՖայլի տեսակը C. C-ի համար առավել հաճախ օգտագործվող արժեքները՝ d - գրացուցակ, f - ֆայլ:
- օգտագործողի օգտանունըՖայլը պատկանում է UserName անունով օգտվողին:

Գտնել հրամանի օգտագործման օրինակներ՝ օգտագործելով չափանիշները

Գտեք սովորական ֆայլեր (ոչ դիրեկտորիաներ) ընթացիկ գրացուցակում, որոնց անունները սկսվում են «~» գրանշանով:

Գտեք. -type f -name "~*" -print

Գտեք ընթացիկ գրացուցակում գտնվող ֆայլերը, որոնք վերջերս փոփոխվել են, քան file.bak-ը:

Գտեք. -ավելի նոր file.bak -type f -print

Օպերատորներ

Չափանիշները կարող են համակցվել օպերատորների միջոցով: Ստորև բերված են օպերատորները՝ ըստ առաջնահերթության նվազման կարգով:

IN ընդհանուր դեպքՕպերատորներից օգտվելիս չափանիշները ստուգվում են ըստ առաջնահերթության: Դուք կարող եք փոխել կարգը փակագծերի միջոցով: Փակագծերը պետք է առանձնացվեն՝ օգտագործելով ետ կտրվածք:

Օպերատորների միջոցով Find հրամանի օգտագործման օրինակներ

Ընթացիկ գրացուցակում գտեք ֆայլեր, որոնք սկսվում են «~» կամ «temp» նշանով և սովորական ֆայլեր են (-տիպ f), և ոչ տեղեկատուներ:

Գտեք. \(-name "~*" -or -name "temp*" \) -type f -print

Գտեք ընթացիկ գրացուցակում (առանց ենթատեղեկատուների մշակման - -maxdeph 1) սովորական ֆայլեր (-ֆայլ f) ավելի մեծ, քան 600 մեգաբայթ և 1 գիգաբայթից պակաս (-size) կամ ֆայլեր, որոնց անունը վերջանում է «.mpeg» (-name):

Գտեք. -maxdepth 1 \(\(-size +600M -and -size -1G \) -or -name "*.mpeg" \) -and -type f

Գործողություններ ֆայլերի վրա

Երբ Find հրամանը կատարվում է, դուք կարող եք կատարել տարբեր գործողություններ հայտնաբերված ֆայլերի վրա: Եկեք նայենք հիմնականներին.

Գործարկվող հրամաններում դուք կարող եք օգտագործել պարամետրը () որպես փաստարկ, որը փոխարինվում է ընթացիկ ֆայլի ուղով:

Գործողությունների միջոցով գտնել հրամանի օգտագործման օրինակներ

Գտեք 1000 բայթից ավելի սովորական ֆայլեր ընթացիկ գրացուցակում և գործարկեք ls -dils հրամանը նրանց վրա (ls action):

Գտեք. -չափ +1000c -տիպ f -ls

Ընթացիկ գրացուցակում գտեք սովորական ֆայլեր, որոնք սկսվում են «~» տիլդի գրանշանով և յուրաքանչյուր ֆայլի համար խնդրում ենք ջնջել այն (rm հրամանը կատարելու համար):

Գտեք. -անուն «~*» -տիպ f -ok rm () \;

Եզրակացություն

Այս հոդվածում մենք քննարկել ենք շատ կարևոր և օգտակար Linux հրաման find , որն ապահովում է գրեթե անսահմանափակ հնարավորություններ ֆայլերի որոնման համար՝ օգտագործելով բազմաթիվ չափանիշներ և օրինաչափություններ։ Իսկ հրամանների (գործողությունների) միջոցով կարող եք որոնել ֆայլեր և կատարել ցանկացած գործողություն դրանց վրա։

    Գտեք ֆայլը իր անունով:Այդպիսին պարզ որոնումկատարվում է օգտագործելով find utility-ը: Ստորև բերված հրամանը կփնտրի ֆայլ ընթացիկ գրացուցակում և դրա բոլոր ենթագրքերում:

    find -iname «ֆայլի անուն»

    • Մուտքագրեք -inname-ի փոխարեն -name՝ մուտքագրված ֆայլի անվան մեջ մեծատառերը անտեսելու համար: -name հրամանը մեծատառերի զգայուն է:
  1. Սկսեք որոնել արմատային գրացուցակում:Համակարգային որոնում իրականացնելու համար հարցմանը ավելացրեք / փոփոխիչը: Այս դեպքում find հրամանը կփնտրի ֆայլը բոլոր դիրեկտորիաներում՝ սկսած արմատից:

    գտնել / -iname «ֆայլի անունը»

    • Դուք կարող եք սկսել որոնումը որոշակի գրացուցակում; դա անելու համար փոխարինեք / գրացուցակի ուղին, օրինակ՝ /home/max.
    • Կարելի է օգտագործել։ /-ի փոխարեն ֆայլը փնտրելու համար միայն ընթացիկ գրացուցակում և դրա ենթագրքերում:
  2. Օգտագործեք wildcard նշանը:* գտնել ֆայլեր, որոնց անունը համապատասխանում է հարցման մի մասի: Դուք կարող եք օգտագործել wildcard նիշը * գտնելու ֆայլ, որի ամբողջական անունը անհայտ է, կամ գտնելու բոլոր ֆայլերը հատուկ ընդլայնումով:

    գտնել /home/max -inname «*.conf»

    • Այս հրամանը կգտնի .conf ընդլայնմամբ բոլոր ֆայլերը օգտվողի Max պանակում (և դրա ենթաթղթապանակներում):
    • Օգտագործեք այս հրամանը՝ գտնելու բոլոր ֆայլերը, որոնց անունները համընկնում են հարցման մի մասի հետ: Օրինակ, եթե ձեր համակարգչում ունեք WikiHow-ի հետ կապված շատ ֆայլեր, գտեք բոլոր ֆայլերը՝ մուտքագրելով «*wiki*»:
  3. Հեշտացրեք ձեր որոնման արդյունքները կառավարելը:Եթե ​​որոնման արդյունքները չափազանց շատ են, ապա դրանց մեջ դժվար կլինի գտնել ձեզ անհրաժեշտ ֆայլը: Օգտագործեք | այնպես որ որոնման արդյունքները զտվում են ավելի քիչ հրամանով: Սա կհեշտացնի ձեր որոնման արդյունքները թերթելը և զտելը:

    գտնել /home/max -inname «*.conf» |

    ավելի քիչՕգտագործեք փոփոխիչներ՝ որոնման արդյունքներում միայն որոշակի տարրեր ցուցադրելու համար: Դուք կարող եք որոնել սովորական ֆայլեր (f), գրացուցակներ (d), խորհրդանշական հղումներ (l), նիշերի վրա հիմնված I/O սարքեր (c) և արգելափակման սարքեր (b):

    find / -type f -inname «filename»

  4. Զտեք ձեր որոնման արդյունքները ըստ ֆայլի չափի:Եթե ​​ձեր համակարգչում ունեք նմանատիպ անուններով բազմաթիվ ֆայլեր, բայց գիտեք ձեր փնտրած ֆայլի չափը, զտեք որոնման արդյունքներն ըստ ֆայլի չափի:

    գտնել / -size +50M -inname «filename»

    • Այս հրամանը կգտնի 50 ՄԲ-ից մեծ բոլոր ֆայլերը: Օգտագործեք + կամ - փոփոխիչը՝ չափի ավելացում կամ նվազում ցույց տալու համար: Եթե ​​չկա + կամ - փոփոխիչ, հրամանը կգտնի ֆայլեր, որոնց չափը ճիշտ է համապատասխանում նշված չափին:
    • Դուք կարող եք զտել ձեր որոնման արդյունքները բայթերով (c), կիլոբայթներով (k), մեգաբայթերով (M), գիգաբայթերով (G) կամ 512 բայթ բլոկներով (b): Խնդրում ենք նկատի ունենալ, որ ցուցադրված փոփոխիչները մեծատառերի զգայուն են:
  5. Օգտագործեք տրամաբանական օպերատորներ (բուլյան օպերատորներ) որոնման զտիչները համատեղելու համար:Տարբերը միավորելու համար կարող եք օգտագործել -and , -or , -not օպերատորները որոնման հարցումներմեկ խնդրանքով.

    գտնել /ճանապարհորդական լուսանկարներ -տիպ f -size +200k -not -inname "*2015*"

    • Այս հրամանը Travelphotos թղթապանակում կգտնի ֆայլեր, որոնք 200 կԲ-ից մեծ են և իրենց անվան մեջ չունեն 2015 թիվը:

Ամենատարածված խնդիրներից մեկը, որին առաջին անգամ բախվում են Linux օգտագործողները, իրենց անհրաժեշտ ֆայլերը գտնելն է: Այս ձեռնարկը ներառում է գտնել հրամանի օգտագործումը, որը թույլ է տալիս լուծել այս խնդիրը և որոնել տարբեր զտիչներով և պարամետրերով ֆայլեր:

Որոնել ըստ անունով

Սա ֆայլերի որոնման ամենաակնառու միջոցն է: Անունով որոնելու համար մուտքագրեք.

Գտեք - անունը «անուն»

Այս հարցումը կլինի մեծատառերի զգայուն, ինչը նշանակում է, որ «ֆայլը» և «Ֆայլը» կվերաբերվեն որպես տարբեր անուններ:

Անունով որոնելու համար, մեծատառերի անզգայուն, մուտքագրեք՝

Գտեք -inname «name»

Եթե ​​Ձեզ անհրաժեշտ է գտնել բոլոր ֆայլերը, որոնք չեն համապատասխանում որոշակի օրինակին, կարող եք շրջել որոնումը` օգտագործելով «-not» կամ «!» տարբերակը: «!» օգտագործելիս Դուք պետք է փախչեք կերպարից, որպեսզի bash-ը չփորձի մեկնաբանել այն նախքան գտնել վազքերը.

Գտնել -not -name «անունը բացառելու համար»

Գտեք\! - անունը «բացառելու անունը»

Որոնել ըստ տեսակի

Դուք կարող եք նշել այն ֆայլերի տեսակը, որոնք դուք պետք է գտնեք, օգտագործելով -type պարամետրը: Այն աշխատում է այսպես.

Գտեք -type type_descriptor հարցումը

Ահա ամենատարածված տեսակի նկարագրիչները.

զ.սովորական ֆայլ
դ: գրացուցակ
լ:խորհրդանշական հղում
գ:նիշերի սարքեր
բ.արգելափակել սարքերը

Օրինակ, եթե մեզ անհրաժեշտ է գտնել համակարգի բոլոր նիշերի սարքերը, կարող ենք գործարկել հետևյալ հրամանը.

Եվ այս կերպ մենք կարող ենք որոնել բոլոր ֆայլերը, որոնք ավարտվում են «.conf»-ով.

Գտնել / -type f -name «*.conf»

Որոնել ըստ ժամանակի և չափի

Find-ը տրամադրում է արդյունքները ըստ չափի և ժամանակի զտման մի շարք եղանակներ:

Որոնել ըստ չափի

Ըստ չափի զտումն իրականացվում է «-size» պարամետրի միջոցով:

Չափի արժեքից հետո դուք պետք է նշեք ածանց, որը ցույց է տալիս չափման միավորները: Ահա ամենատարածված տարբերակներից մի քանիսը.

գ:բայթեր
k:կիլոբայթ
M:մեգաբայթ
G:գիգաբայթ
բ.բլոկներ 512 բայթ

Ուղիղ 100 բայթ մեծությամբ բոլոր ֆայլերը գտնելու համար մուտքագրեք՝

Գտեք / -չափ 100c

100 բայթից փոքր բոլոր ֆայլերը որոնելու համար կարող ենք օգտագործել հետևյալ ձևը.

Գտեք / -չափ -100c

500 մեգաբայթից ավելի ֆայլեր որոնելու համար կարող եք օգտագործել հետևյալ հրամանը.

Գտնել / -չափ +500M

Որոնել ըստ ժամանակի

Linux-ը պահպանում է մուտքի ժամանակը, փոփոխման ժամանակը և փոփոխման ժամանակը:

  • Մուտքի ժամանակ. վերջին անգամ, երբ ֆայլը կարդացվել կամ գրվել է:
  • Փոփոխության ժամանակը. այն ժամանակը, երբ ֆայլի բովանդակությունը վերջին անգամ փոփոխվել է:
  • Փոփոխության ժամանակը. ֆայլի ինոդում մետատվյալների վերջին փոփոխության ժամանակը:

Այս արժեքներով զտելու համար մենք կարող ենք օգտագործել համապատասխանաբար «-atime», «-mtime» և «-ctime» տարբերակները, ինչպես նաև գումարած և մինուս նշանները՝ ավելի վաղ կամ ավելի ուշ ժամանակով ֆայլեր գտնելու համար, որը նման է զտմանը: չափը։

Այս պարամետրերի արժեքը ցույց է տալիս, թե քանի օր առաջ պետք է որոնումը կատարվի:

Ֆայլեր որոնելու համար, որոնց բովանդակությունը փոխվել է երեկ, մուտքագրեք.

Գտեք / -mtime 1

Եթե ​​մեզ անհրաժեշտ են ֆայլեր, որոնք մուտք են գործել երեկ և ավելի ուշ, մենք կարող ենք օգտագործել հրամանը.

Գտնել / -atime -1

Ֆայլերը առբերելու համար, որոնց մետատվյալները փոխվել են ավելի քան երեք օր առաջ, օգտագործեք հետևյալ հրամանը.

Գտնել / -ctime +3

Կան նաև լրացուցիչ ընտրանքներ, որոնք թույլ են տալիս օրերի փոխարեն նշել րոպեները: Այս հրամանը թվարկում է վերջին րոպեին փոփոխված ֆայլերը.

Գտեք / -mmin -1

Բացի այդ, գտնելը կարող է համեմատվել տվյալ ֆայլի հետ և վերադարձնել բոլոր ֆայլերը, որոնք ավելի նոր են.

Գտեք / -նոր իմ ֆայլը

Որոնում ըստ սեփականատիրոջ և թույլտվությունների

Օգտագործելով «-user» և «-group» պարամետրերը, կարող եք որոնել ֆայլեր համապատասխանաբար ըստ սեփականատիրոջ կամ խմբի: Օգտագործողի «syslog» ֆայլը գտնելու համար անհրաժեշտ է մուտքագրել.

Գտնել / -user syslog

Նմանապես, դուք կարող եք որոնել ֆայլեր «ստվերային» խմբում.

Գտնել / -group shadow

Կարող եք նաև որոնել հատուկ թույլտվություններ ունեցող ֆայլեր:

Եթե ​​մեզ անհրաժեշտ է համապատասխանեցնել թույլտվությունների ճշգրիտ փաթեթը, ապա օգտագործվում է հետևյալ ձևը.

Գտնել / -perm 644

Եթե ​​Ձեզ անհրաժեշտ է գտնել բոլոր ֆայլերը նշվածից ոչ ցածր լուծաչափերով, ապա պետք է մուտքագրեք.

Գտնել / -պերմ -644

Լրացուցիչ թույլտվություններ ունեցող բոլոր ֆայլերը կհամապատասխանեն այս չափանիշին: Օրինակ, այս դեպքում այն ​​կհամապատասխանի «744» թույլտվություններով ֆայլին:

Զտում ըստ խորության

Այս բաժնի համար մենք պետք է ժամանակավոր գրացուցակում ստեղծենք երեք մակարդակի գրացուցակ, առաջին մակարդակի տասը դիրեկտորիաներով: Յուրաքանչյուր գրացուցակ (ներառյալ ժամանակավոր) կունենա տասը ենթագրքեր և տասը ֆայլ:

Եկեք ստեղծենք կառուցվածքը՝ գործարկելով հետևյալ հրամանները.

Mkdir -p ~/test/level1dir(1..10)/level2dir(1..10)/level3dir(1..10) դիպչել ~/test/(file(1..10),level1dir(1..10) )/(file(1..10),level2dir(1..10)/(file(1..10),level3dir(1..10)/file(1..10)))) cd ~/test

Կառուցվածքը ստուգելու համար կարող եք օգտագործել ls և cd հրամանները: Հասկանալով կազմակերպությունը, դուք պետք է վերադառնաք թեստային գրացուցակ.

Cd ~/թեստ

Այժմ փորձենք գտնել կոնկրետ ֆայլեր այս կառուցվածքում: Սկսենք սովորական որոնման օրինակով անունով.

Գտեք -name file1

Արդյունքները շատ են։ Եթե ​​ելքը թարգմանենք հաշվիչի, կտեսնենք, որ ընդհանուր առմամբ կա 1111 այդպիսի ֆայլ.

Գտնել -name file1 | wc -l 1111

Շատ դեպքերում այս արդյունքները ավելորդ են: Փորձենք նեղացնել որոնումը։

Դուք կարող եք սահմանել որոնման առավելագույն խորությունը վերին մակարդակի որոնման գրացուցակում.

Գտեք -maxdepth number -name name

«Ֆայլ1» միայն «մակարդակ 1» և ավելի բարձր գրացուցակներում գտնելու համար անհրաժեշտ է նշել առավելագույն խորությունը 2 (1 վերին մակարդակի գրացուցակի համար և 1՝ 1 մակարդակի դիրեկտորիաների համար).

Գտեք -maxdepth 2 -name file1

Եթե ​​սխալ եք գտնում, խնդրում ենք ընդգծել տեքստի մի հատվածը և սեղմել Ctrl+Enter.

Եթե ​​հաճախ եք աշխատում հրամանի տողհամակարգչի կամ սերվերի վրա, որտեղ ընդհանրապես չկա գրաֆիկական կեղև, վաղ թե ուշ ձեզ կկանգնեն ֆայլեր որոնելու խնդիր: Բարեբախտաբար, Linux-ն արդեն ունի ներկառուցված հրաման, որը թույլ է տալիս համակարգում ֆայլ գտնել:

Այսօր մենք կխոսենք find հրամանի օգտագործման մասին. հավատացեք ինձ, արժե սովորել, թե ինչպես աշխատել այս հզոր և հարմար գործիքի հետ:

Ինչպես օգտագործել Find հրամանը

Պարզ բառերով, find հրամանի հիմնական շարահյուսությունը հետևյալն է.

Գտեք / path parameters ֆայլի անունը

Եկեք հասկանանք թիմի հնարավորությունները

Որոնեք ֆայլ անունով

Առաջին պարամետրը ճանապարհն է: Եթե ​​պատկերացում չունեք, թե որտեղ կարող է թաքնված լինել ֆայլը, փոխարինեք ուղին /-ով, բավական է: Այնուամենայնիվ, ամբողջ սկավառակի որոնումը կարող է բավականին ժամանակատար լինել, և եթե գիտեք, թե որտեղ կարող է լինել ֆայլը, նշեք այն թղթապանակը, որտեղից պետք է սկսել որոնումը (օրինակ՝ ~ որոնել օգտվողի գլխավոր թղթապանակում):

Այժմ եկեք անցնենք որոնման պարամետրերին: Ֆայլը անունով որոնելու երկու տարբերակ կա.

  • անուն - որոնել մեծատառով զգայուն ֆայլի անունը
  • iname - որոնել ֆայլի անվանումը, որը բացարձակապես զգայուն չէ

Պետք է հիշել, որ Linux-ում ֆայլի անվան դեպքը կարևոր է, և եթե ձեզ անհրաժեշտ է գտնել, օրինակ, Ubuntu.txt ֆայլը, ապա հետևյալ հրամանը որևէ արդյունք չի տա.

Գտեք / -name ubuntu.txt

Բայց դուք կարող եք օգտագործել iname հրամանը և կատարել մեծատառերի անզգույշ որոնում.

Գտեք / -iname ubuntu.txt

Որոնել ըստ տեսակի

Find հրամանը թույլ է տալիս որոնել ոչ միայն ֆայլեր: Ահա բռնակների որոնման աջակցության տեսակները.

  • f - սովորական ֆայլ
  • դ - գրացուցակ
  • լ - խորհրդանշական հղում
  • գ - նիշերի սարք
  • բ - արգելափակման սարքը

Օրինակ՝ ներսում բոլոր դիրեկտորիաները որոնելու համար տնային գրացուցակներկայիս օգտվողը, որի անունը սկսվում է «config»-ով, գործարկեք հետևյալ հրամանը.

Գտեք ~ -type d -name config*

Որոնման արդյունքների դուրսբերում ֆայլում

Հրամանի արդյունքը ֆայլ դուրս բերելու հարմար գործառույթը չափազանց օգտակար կլինի, եթե կան շատ որոնման արդյունքներ կամ հետագայում դրանց հետ աշխատելու անհրաժեշտություն կա: Օրինակ, բոլոր հայտնաբերված կազմաձևման ֆայլերի ցանկը ֆայլում պահելու համար conf_search, գործարկեք հետևյալ հրամանը.

Գտեք /etc -type f -name “*.conf” > conf_search

Որոնեք ֆայլերը ըստ չափի

Սա շատ օգտակար տարբերակ է, երբ սկավառակի տարածքը սպառվում է և պետք է պարզել, թե որտեղ է այն գնացել: Օրինակ՝ 1000 ՄԲ-ից մեծ ֆայլեր գտնելու համար գործարկեք հետևյալ հրամանը.

Գտնել / -չափ +1000M

Կարող են օգտագործվել հետևյալ չափերի հապավումները.

  • գ - բայթ
  • k - կիլոբայթ
  • M - մեգաբայթ
  • G - գիգաբայթ
  • բ - 512 բայթ բլոկներ

Սրանք հզոր հրաման օգտագործելու ընդամենը մի քանի եղանակ են: Ավելի շատ ուղիներ կարելի է գտնել ձեռնարկում՝ գործարկելով հրամանը

© 2024 ermake.ru -- Համակարգչի վերանորոգման մասին - Տեղեկատվական պորտալ