3 sätt att hitta filer på Linux

Innehållsförteckning:

3 sätt att hitta filer på Linux
3 sätt att hitta filer på Linux

Video: 3 sätt att hitta filer på Linux

Video: 3 sätt att hitta filer på Linux
Video: Hur du öppnar en iphone UTAN lösenord 2024, Maj
Anonim

Att hitta filer på ett Linux -system kan vara svårt om du inte vet hur. Det bästa sättet att hitta filer på Linux är att använda några terminalkommandon. Att behärska några av dessa kommandon kan ge dig fullständig kontroll över filer, och de är mer användbara än de enkla sökfunktionerna i andra operativsystem.

Steg

Metod 1 av 3: Använda "hitta"

690519 1
690519 1

Steg 1. Sök efter filer efter namn

Denna typ av sökning är den mest grundläggande, och du kan göra detta med kommandot find. Kommandot nedan kommer att utföra en sökning baserat på ordet som anges i katalogen du befinner dig i samt underkatalogerna i den.

hitta -namn "filnamn"

Om du använder -namn istället för -namn har skillnaden mellan stora och små nyckelord ingen effekt. Kommandot -name anser att stora och små bokstäver är olika tecken

690519 2
690519 2

Steg 2. Ställ in sökningen så att den startar i rotkatalogen

Om du vill göra en systemomfattande sökning kan du lägga till / modifieraren till nyckelordet. Modifieraren säger till kommandot find att söka grundligt, med början från rotkatalogen.

hitta / -namn "filnamn"

  • Du kan starta en sökning i en specifik katalog genom att ersätta /modifieraren med katalogsökvägen, till exempel /home /pat.
  • Du kan använda. annat än / så att sökningar endast utförs i den katalog du befinner dig i och även underkatalogerna i den.
690519 3
690519 3

Steg 3. Använd jokertecken

* att söka efter allt som delvis matchar dina sökord.

Jokertecknet * kan användas för att hitta filer vars fullständiga namn du inte känner till, eller om du vill hitta alla filer med ett specifikt tillägg.

hitta /home /pat -iname "*.conf"

  • Kommandot ovan returnerar alla.conf -filer i användarkatalogen som heter Pat (liksom underkatalogerna däri).
  • Du kan också använda den för att hitta allt vars namn delvis matchar det sökordet. Om du till exempel har många dokument relaterade till wikiHow kan du hitta dem genom att skriva "*wiki*".
690519 4
690519 4

Steg 4. Gör sökresultaten enklare att hantera

Om sökresultaten är för många blir det svårt för dig att hitta filen du vill ha. Använd tecknet | och skicka sökresultaten tillbaka till "mindre" filterprogram. På så sätt kan du bläddra igenom och filtrera sökresultaten lättare.

hitta /home /pat -namn "*.conf" | mindre

690519 5
690519 5

Steg 5. Hitta sökresultat med en specifik typ

Du kan använda modifierare för att endast returnera vissa typer av resultat. Du kan söka efter vanliga filer (f), kataloger (d), symboliska länkar (l), teckenenheter (c) och blockera enheter (b) med hjälp av lämpliga modifierare.

hitta / -typ f -namn "filnamn"

690519 6
690519 6

Steg 6. Filtrera sökresultaten efter storlek

Om du har många filer med liknande namn, men vet storleken på filen du vill ha, kan du filtrera sökningen efter storlek.

hitta / -storlek +50M -namn "filnamn"

  • Kommandot ovan returnerar sökresultat på 50 megabyte eller mer. Du kan använda + eller - för att söka efter filer med en större eller mindre storlek. Om du utelämnar + eller - tecknet får sökresultatet endast resultat med den "korrekta" storleken.
  • Du kan filtrera sökningen efter byte (c), kilobyte (k), megabyte (M), gigabyte (G) eller 512 byte (b) block. Tänk på att markeringarna skiljer mellan stora och små bokstäver.
690519 7
690519 7

Steg 7. Använd booleska operatörer för att kombinera sökfilter

Du kan använda operatorerna -och, -eller och -inte för att kombinera olika sökningar.

hitta /resa bilder -typ f -size +200k -inte -namn "*2015*"

Kommandot ovan kommer att leta efter filer i katalogen "travelphotos" som är över 200 kilobyte stora, men som inte har ordet "2015" i sitt namn

690519 8
690519 8

Steg 8. Utför en filsökning med ägarens namn eller behörighet

Om du försöker hitta en specifik fil som tillhör en specifik användare eller letar efter en fil med vissa behörigheter kan du begränsa sökningen.

hitta / -användare pat -namn "filnamn" hitta / -gruppanvändare -namn "filnamn" hitta / -perm 777 -namn "filnamn"

Exemplen ovan utför en sökning efter en specifik användare, grupp eller behörighet inom ett nyckelord. Du kan också utelämna filnamnet för att returnera alla filer som matchar den typen. Till exempel returnerar / -perm 777 alla filer med 777 behörigheter (inga begränsningar)

690519 9
690519 9

Steg 9. Koppla samman kommandona för att utföra åtgärden när filen har hittats

Du kan kombinera find -kommandot med andra kommandon så att du kan bearbeta filer som returneras av nyckelord med det kommandot. Separera find -kommandot och det andra kommandot med -exec -flaggan, avsluta sedan raden med {};

hitta. -typ f -perm 777 -exec chmod 755 {};

Kommandot ovan söker i katalogen du befinner dig i (och alla underkataloger i den) efter filer med 777 behörigheter. Då kommer chmod -kommandot att ändra behörigheterna till 755

Metod 2 av 3: Använda "lokalisera"

690519 10
690519 10

Steg 1. Installera

lokalisera funktionalitet. Kommandot lokalisera är i allmänhet snabbare än kommandot find, på grund av databasanvändningen av ditt filsystem. Alla typer av Linux är inte utrustade med en lokaliseringsfunktion, så ange följande kommando för att installera det:

  • Skriv sudo apt-get update och tryck sedan på Retur.
  • Du kan installera den på Debian och ubuntu så här: Skriv sudo apt-get install mlocate och tryck sedan på Retur. Om lokaliseringsfunktionen installerades tidigare ser du att meddelandet mlocate redan är den senaste versionen.
  • På Arch Linux, använd pakethanteraren pacman: pacman -Syu mlocate
  • För Gentoo, använd emerge: emerge mlocate
690519 11
690519 11

Steg 2. Uppdatera

lokalisera databas Du. Kommandot lokalisera kommer inte att kunna hitta någonting förrän det skapas och uppdateras. Processen utförs vanligtvis automatiskt varje dag, men du kan också uppdatera den manuellt. Du måste göra detta om du vill använda lokaliseringsfunktionen så snart som möjligt.

Skriv in sudo updatedb och tryck sedan på Retur

690519 12
690519 12

Steg 3. Använd

lokalisera för att utföra en enkel sökning.

Lokaliseringsfunktionen fungerar snabbt, men har inte så många alternativ som kommandot find. Du kan utföra grundläggande filsökning på ett liknande sätt som kommandot find.

lokalisera -i "*.jpg"

  • Kommandot ovan söker efter filer med filtillägget-j.webp" />
  • Precis som kommandot find, gör -i -modifieraren också stora och små bokstäver i nyckelord som anses vara desamma.
690519 13
690519 13

Steg 4. Begränsa sökresultaten

Om din sökning ger så många resultat att det är svårt för dig att använda dem kan du minska dessa resultat med -n -modifieraren, följt av antalet resultat du vill returnera.

lokalisera -n 20 -i "*.jpg"

  • Endast 20 sökresultat visas.
  • Du kan också använda | för att skicka sökresultat till mindre filterprogram för enklare rullning av resultat.

Metod 3 av 3: Söka efter text i filer

690519 14
690519 14

Steg 1. Använd kommandot

grep för att hitta textsträngen i filen.

Om du letar efter en fil som innehåller en specifik fras eller teckensträng kan du använda kommandot grep. Det grundläggande grep -kommandot har följande format:

grep -r -i "sökfråga"/sökväg/till/katalog/

  • Modifieraren -r gör sökningen "rekursiv", så en sökning kommer att utföras i katalogen och alla underkataloger i den för att hitta filer som innehåller text med sökordet.
  • Modifieraren -i anger att sökordet inte skiljer mellan stora och små bokstäver. Om du vill tvinga sökningen att skilja mellan stora och små bokstäver, ignorera -i -modifieraren.
690519 15
690519 15

Steg 2. Ta bort överflödig text

När du gör en grep -sökning som ovan ser du filnamnet med matchande bokstäver markerade. Du kan dölja matchande text och bara visa filkatalogens namn och sökväg genom att lägga till:

grep -r -i "sökord"/sökväg/till/katalog/| klipp -d: -f1

690519 16
690519 16

Steg 3. Dölj felmeddelandet

Grep -kommandot returnerar ett fel när du försöker komma åt en katalog utan lämpliga behörigheter eller när du anger en tom katalog. Du kan skicka felmeddelanden till /dev /null så att de inte visas.

grep -r -i "sökord"/sökväg/till/katalog/2>/dev/null

Rekommenderad: