Sluit mappen uit in Linux Find

Sluit Mappen Uit In Linux Find



Wanneer u met Linux werkt, kunt u een instantie krijgen waarin u snel een bestand op uw machine wilt vinden. Linux biedt verschillende zoekopdrachten, waaronder de opdracht 'zoeken' waarmee u een bepaald bestand kunt vinden. Het enige nadeel is dat de opdracht talloze rommel en bestanden uitvoert. Als u er echter zeker van bent dat het doelbestand zich niet in een bepaalde map bevindt, kunt u het uitsluiten in de opdracht 'zoeken' om de zoekuitvoer te verminderen.

Dit bericht behandelt wat de opdracht 'vinden' is en hoe het werkt. Verder zullen we zien hoe u de opdracht kunt gebruiken terwijl u de mappen in Linux uitsluit. Lees verder!

Werken met de opdracht Zoeken

De opdracht 'find' in Linux helpt bij het lokaliseren van de bestanden en mappen om te voorkomen dat u ze handmatig moet zoeken. Het gebruikt de volgende syntaxis:







vind

Hier is een voorbeeld waarin we proberen een bestand met de naam 'linuxhint.c' in de homedirectory te vinden:





De uitvoer geeft het absolute pad om het doelbestand te vinden. Stel dat we de bestanden willen vinden met behulp van een patroon. Laten we zeggen dat we tekstbestanden willen vinden in de Documenten/ op ons Linux-systeem. We specificeren onze opdracht zoals hieronder geïllustreerd:





Merk op hoe de opdracht 'zoeken' alle mappen uitvoert die de tekstbestanden bevatten. Dat is een eenvoudig voorbeeld van het gebruik van de Linux-opdracht 'find'.



Hoe de mappen in Linux Find uit te sluiten

Wanneer u de opdracht 'find' uitvoert, doorzoekt het de opgegeven map en submappen. Gebruik een van de volgende drie methoden om een ​​submap uit te sluiten van de zoekopdracht:

1. De snoeioptie

Voor demonstratie gebruiken we de linuxhint/ . We kunnen zien dat het drie submappen heeft, zoals weergegeven in de volgende afbeelding:

Bij gebruik met -print helpt de optie 'prune' om gespecificeerde submappen uit te sluiten bij het werken met de opdracht 'find'. In de vorige afbeelding kunnen we de opdracht 'find' gebruiken en het pad naar de Linuxhint-directory geven. Geef vervolgens op om dir2 uit te sluiten van de zoekuitvoer.

We voeren onze opdracht als volgt uit:

vind /home/kyle/Desktop/linuxhint/ -path /home/kyle/Desktop/linuxhint/dir2 -prune -o -print

Merk op hoe dir2 nergens in de uitvoer wordt weergegeven, wat bevestigt dat we erin zijn geslaagd om het uit te sluiten.

We kunnen dezelfde opdracht ook uitvoeren in een verkorte versie zoals weergegeven in het volgende:

U kunt ook talrijke mappen uitsluiten. Daarvoor gebruiken we de -o optie. In het volgende voorbeeld worden dir1 en dir3 uitgesloten, zodat alleen dir2 overblijft. Als u er zeker van bent dat het bestand of de map die u zoekt niet in de andere mappen staat, vermindert deze optie de zoekuitvoer.

2. Via de “Niet”-optie

In de zoekquery is het mogelijk om 'niet' toe te voegen om aan te geven welke mappen moeten worden uitgesloten. De implementatie ervan is eenvoudiger dan de prune-optie.

Dit is de te gebruiken syntaxis:

zoek [pad] -type f -niet -pad '*/directory-uit te sluiten/*'

Stel dat we de dir1 willen uitsluiten in de 'find' zoekuitvoer die we hebben geïmplementeerd met de prune-optie. We voeren de opdracht als volgt uit:

vinden . -type f -niet -pad ‘*/dir2/*’

We krijgen dezelfde uitvoer als bij het gebruik van de prune-optie. De opgegeven map is uitgesloten; alleen de resterende submappen verschijnen in de zoekuitvoer.

3. Via de “!” Keuze

De laatste methode om de mappen uit te sluiten in het Linux 'find' commando is het toevoegen van de '!' exploitant. Het werkt als de 'niet'-operator en de syntaxis is bijna identiek.

zoek [pad] -type f ! -path ‘*/directory-uit te sluiten/*’

Stel dat we het eerdere voorbeeld herhalen om de dir2 uit te sluiten met behulp van de '!' exploitant. We krijgen nog steeds dezelfde output. Slechts een deel van de opdracht die we gebruiken, is gewijzigd.

Dat zijn de drie manieren om de mappen uit te sluiten in het Linux-commando 'find'.

Conclusie

De opdracht 'find' van Linux is handig om snel de bestanden en mappen te vinden. Het wordt beter omdat u de mappen in uw zoekopdracht kunt uitsluiten om de zoekuitvoer te verminderen. Om de mappen uit te sluiten, kunt u de 'prune', 'not' of '!' opties. Dit bericht besprak hoe de drie opties werken met de gegeven voorbeelden van het uitsluiten van de mappen. Probeer het!