Het commando 'localiseren' en vinden commando wordt gebruikt om een bestand op naam te zoeken. Maar het verschil tussen beide opdrachten is dat de opdracht 'local' een achtergrondproces is en het bestand in de database doorzoekt, terwijl de opdracht 'finder' in het bestandssysteem zoekt. Het 'local'-commando is veel sneller dan het 'find'-commando.
Als u een bestand niet kunt vinden met de opdracht 'local', betekent dit dat uw database verouderd is en dat u uw database kunt bijwerken met de opdracht 'updatedb'.
Syntaxis:
locate [OPTION]... PATTERN...
Opties:
Enkele nuttige opdrachtregelopties zijn als volgt:
gebruikersnaam
-A, --alles: Het wordt gebruikt om alleen vermeldingen weer te geven die met alle PATRONEN overeenkomen, in plaats van dat slechts één ervan moet overeenkomen.
-b, --basisnaam: Het wordt gebruikt om alleen de basisnaam te matchen met de opgegeven patronen.
-c, --tel: Het wordt gebruikt voor het schrijven van overeenkomende nummers in plaats van het schrijven van bestandsnamen op standaarduitvoer.
-d, --database DBPATH: Het wordt gebruikt om de standaarddatabase te vervangen door DBPATH.
-e, --bestaand: Het wordt gebruikt om alleen vermeldingen weer te geven die verwijzen naar bestaande bestanden terwijl de opdracht wordt uitgevoerd.
-L, --volg: Als de optie '--existing' is opgegeven, wordt deze gebruikt om te controleren of bestanden bestaan en of er symbolische koppelingen volgen. De verbroken symbolische koppelingen naar de uitvoer worden weggelaten. Dit is het standaardgedrag. Het tegenovergestelde gedrag kan worden gespecificeerd met behulp van de optie '--nofollow'.
-h, --help: het wordt gebruikt om de helpdocumentatie weer te geven die een samenvatting bevat van de beschikbare opties.
eenvoudig Java-programma
-i, --negeer-hoofdlettergebruik: Het wordt gebruikt om de hoofdlettergevoeligheid van de opgegeven patronen te negeren.
-p, --negeer-spaties: Het wordt gebruikt om interpunctie en spaties te negeren bij het matchen van patronen.
-t, --translitereer: Het wordt gebruikt om accenten te negeren met behulp van iconv-transliteratie bij het matchen van patronen.
-l, --limit, -n LIMIT: Als deze optie is opgegeven, wordt de opdracht met succes afgesloten nadat LIMIT-vermeldingen zijn gevonden.
-m, --mmap: Het wordt gebruikt om de compatibiliteit met BSD en GNU-locatie te negeren.
-0, --nul: Het wordt gebruikt om de invoer bij uitvoer te scheiden met behulp van het ASCII NUL-teken in plaats van elke invoer op een afzonderlijke regel te schrijven.
-S, --statistieken: Het wordt gebruikt om statistieken over elke gelezen database naar standaarduitvoer te schrijven in plaats van naar bestanden te zoeken.
-r, --regexp REGEXP: Het wordt gebruikt voor het zoeken naar een standaard regexp REGEXP.
--regex: Het wordt gebruikt om alle PATTERN's te beschrijven als uitgebreide reguliere expressies.
-V, --versie: Het wordt gebruikt om de versie- en licentie-informatie weer te geven.
-w, --volledige naam: Het wordt gebruikt om alleen de volledige padnaam in opgegeven patronen te matchen.
Voorbeelden van het zoekcommando
Laten we de volgende voorbeelden van de opdracht 'localiseren' bekijken:
- Hoe u de opdracht 'localiseren' gebruikt
- Zoekopdrachten beperken
- Geef het aantal overeenkomende vermeldingen weer
- Het negeren van de hoofdlettergevoeligheid
- De mlocate-database bijwerken
- Toon alleen beschikbare bestanden in ons systeem
- Volg de status van de mlocate-database
- Scheid uitvoerinvoer met een ander scheidingsteken
Hoe u de opdracht 'localiseren' gebruikt
De opdracht Locate is een handig hulpprogramma voor het zoeken naar bestanden. Het is vrij eenvoudig te gebruiken, voer gewoon de opdracht als volgt uit:
locate
Beschouw de onderstaande uitvoer:
Zoekopdrachten beperken
We kunnen de zoekresultaten beperken om redundantie te voorkomen door de optie '-n' te gebruiken.
int om Java te stringen
Bijvoorbeeld. Om de slechts vijf resultaten van onze zoekopdrachten weer te geven, voert u de opdracht als volgt uit:
locate -n 5 '*.txt'
Met de bovenstaande opdracht worden de eerste vijf tekstbestanden weergegeven. Beschouw de onderstaande uitvoer:
Geef het aantal overeenkomende vermeldingen weer
Om de som van overeenkomende bestanden weer te geven, voert u de opdracht uit met de optie '-c'. Overweeg het onderstaande commando:
locate -c Demo*
Het bovenstaande commando toont de som van de bestanden met 'Demo' in hun naam. Beschouw de onderstaande uitvoer:
Het negeren van de hoofdlettergevoeligheid
Zoals we weten is de Linux-terminal hoofdlettergevoelig. Dus als we een bestand in hoofdletters zoeken, worden alleen de bestanden in hoofdletters weergegeven. Om de hoofdlettergevoeligheid te negeren, voert u de opdracht als volgt uit met de optie '-i':
hoe te converteren naar string
locate -i 'demo.txt'
Met het bovenstaande commando worden zowel de bestanden met 'demo' als 'Demo' in hun naam weergegeven. Beschouw de onderstaande uitvoer:
De mlocate-database bijwerken
Het 'locate'-commando is afhankelijk van de 'mlocate'-database. Dus als de opdracht 'localiseren' niet goed werkt, moeten we de database bijwerken. Om de database bij te werken, voert u de opdracht 'updatedb' als volgt uit:
sudo updatedb
Toon alleen beschikbare bestanden in ons systeem
Soms resulteert de opdracht 'localiseren' in verwijderde bestanden. Om te voorkomen dat u de resultaten voor de verwijderde bestanden ziet, voert u de opdracht uit met de optie '-e'. Het toont alleen de bestanden die fysiek beschikbaar zijn in ons systeem. Overweeg het onderstaande commando:
locate -i -e *demo.txt*
Het zal de onderstaande uitvoer produceren:
Volg de status van de mlocate-database
Om de databasestatistieken te vinden, voert u de opdracht als volgt uit met de optie '-S':
locate -S
Beschouw de onderstaande uitvoer:
Scheid uitvoerinvoer met een ander scheidingsteken
Het standaard uitvoerscheidingsteken van het zoekcommando is een nieuwe regel. Maar we kunnen het standaardscheidingsteken wijzigen. Als u bijvoorbeeld de ASCII NUL wilt gebruiken, voert u de opdracht uit met de optie '-0'. Overweeg het onderstaande commando:
locate -i -0 'demo.txt'
Het zal de uitvoer weergeven als: