Moeiteloze manieren om grote bestanden op Linux te lezen
Moet u een enorm logbestand, tekstbestand of dataset analyseren? U bent absoluut niet de enige. Het verwerken van grote bestanden op Linux kan ontmoedigend zijn wanneer u inhoud probeert te bekijken of beheren terwijl u uw systeembronnen in de gaten houdt. Gelukkig bestaan er verschillende methoden om grote bestanden op Linux te lezen, waaronder hulpprogramma’s zoals de less
opdracht, Vim en technieken om het document in kleinere secties te splitsen.
In dit artikel worden verschillende technieken besproken waarmee u grote bestanden kunt lezen of specifieke informatie kunt extraheren op Linux met behulp van diverse hulpmiddelen.
Het gebruik van de opdracht Less
Op zoek naar een lichtgewicht tool om de inhoud van grote tekstbestanden weer te geven of snelle zoekopdrachten uit te voeren? De less
command is uw go-to-oplossing.
Een van mijn favoriete aspecten van dit hulpprogramma is dat het, in tegenstelling tot standaard teksteditors, u toestaat om bestanden één pagina tegelijk te bekijken zonder het hele bestand in het geheugen te laden. Dit maakt het opmerkelijk sneller, vooral voor grote bestanden, en vereenvoudigt het proces van het beoordelen van uitgebreide documenten of logs.
Om het te gebruiken, typt u eenvoudigweg less
gevolgd door de bestandsnaam:
Met deze opdracht opent u de less
interface, zodat u met de pijltjestoetsen regel voor regel door het document kunt scrollen. U kunt ook zoeken naar specifieke termen door op te drukken /en vervolgens op uw zoekterm.
U kunt ook less
de uitvoer van andere opdrachten lezen door een pipeline-operator te gebruiken. Om bijvoorbeeld de uitvoer van de ls
opdracht te bekijken en weer te geven, gebruikt u:
De less
opdracht biedt ook meerdere opties om de functionaliteit aan te passen. U kunt deze opties combineren om de less
werking aan te passen aan uw behoeften.
U kunt bijvoorbeeld de -p
optie met gebruiken less
om naar een specifieke term te zoeken:
Met deze opdracht opent u de uitvoer en springt u direct naar de eerste keer dat het woord sample voorkomt .
U kunt ook regelnummers naast de bestandsinhoud weergeven met de -N
optie:
Bestanden splitsen met de opdracht Splitsen
Soms is de beste manier om een groot bestand te verwerken, het op te splitsen in kleinere, beter beheersbare stukken – vooral als u het bestand in secties wilt lezen of verwerken. Ik heb bijvoorbeeld de neiging om bestanden te splitsen als ze groter zijn dan 1 GB of meer dan 100 miljoen regels bevatten.
U kunt bestanden verdelen op grootte of op regelaantal. Voor tekstbestanden is het over het algemeen het beste om ze te verdelen op regelnummers om te voorkomen dat woorden of regels worden gehalveerd.
Om bijvoorbeeld een bestand te splitsen op basis van een specifiek aantal regels, voert u de volgende opdracht uit:
In dit geval is het bestand “samplefile.txt” verdeeld in meerdere delen, elk bestaande uit 10.000 regels. De resulterende bestanden worden “part_aa”, “part_ab”, enzovoort genoemd. U kunt nu kleinere segmenten van het bestand openen en onderzoeken zonder u zorgen te maken over overmatig geheugengebruik of trage systeemprestaties.
Als u grote bestanden wilt splitsen op basis van de grootte, bijvoorbeeld 100 MB, kunt u deze opdracht uitvoeren:
Midnight Commander gebruiken
Midnight Commander (MC) is een tekstgebaseerde bestandsbeheerder met twee panelen en een gebruiksvriendelijke visuele interface voor het navigeren door bestanden en mappen.
Met MC kunt u bestanden direct in de interface bekijken, waardoor u snel door grote logs of datasets kunt scrollen zonder het hele document in het geheugen te laden. Ik waardeer hoe soepel en efficiënt MC u door grote bestanden laat navigeren.
Om MC te installeren, voert u eenvoudigweg het volgende uit:
Start het door het mc
in de terminal uit te voeren. Eenmaal binnen navigeer je naar het grote bestand dat je wilt lezen en verken je de inhoud ervan.
Klogg gebruiken
Klogg is een snelle en open-source GUI-gebaseerde logviewer die grote bestanden efficiënt kan verwerken. In tegenstelling tot standaard editors die het hele bestand in het geheugen laden, leest Klogg alleen delen van het bestand als dat nodig is, waardoor het geheugengebruik wordt geminimaliseerd.
Klogg biedt bovendien realtime filter- en zoekmogelijkheden, waardoor u eenvoudig specifieke content kunt vinden zonder dat u lang hoeft te scrollen.
Voordat u Klogg installeert, moet u de directory “/etc/apt/keyrings” aanmaken en de GPG-sleutel hieraan toevoegen. De GPG-sleutel is essentieel voor het valideren van de Klogg-pakketrepository.
Om de directory te maken, voert u het volgende uit:
Voeg de GPG-sleutel toe met de volgende opdracht:
Voeg vervolgens de Klogg-repository toe aan uw systeem met de curl-opdracht:
Werk uw pakketlijst bij met:
Tot slot kunt u Klogg installeren met deze opdracht:
Na de installatie opent u het bestand eenvoudig via de interface van Klogg en maakt u gebruik van de ingebouwde functies om de bestandsinhoud te doorzoeken en erdoorheen te navigeren.
Grote bestanden lezen met een teksteditor
Terwijl veel teksteditors moeite hebben met grote bestanden, kunnen editors als Vim en Emacs grotere bestanden effectiever verwerken dan standaardeditors als Nano of Gedit.
Met de functies van Vim kunt u bijvoorbeeld door het bestand navigeren en snel naar termen zoeken zonder de hele inhoud in één keer in het geheugen te laden. Let er echter wel op dat zoekopdrachten beperkt zijn tot delen van het bestand die al zijn geladen.
Om een bestand in Vim te openen, voer je het volgende uit:
Zoeken door een bestand met de opdracht Grep
Als u specifieke informatie wilt vinden in een groot bestand, gebruikt u de grep
opdracht. Met deze krachtige tool kunt u bestanden doorzoeken en alleen de regels weergeven die overeenkomen met uw query.
Wanneer u opdrachtuitvoer naar stuurt less
, moet u onthouden dat dit slechts tijdelijk is: de uitvoer gaat verloren zodra u afsluit less
. Om de uitvoer te bewaren voor latere weergave, leidt u deze om naar een bestand en opent u deze met een opdrachtregeltool zoals less.
Om bijvoorbeeld elke regel te filteren die het woord “ERROR” bevat in een groot bestand, zou u het volgende uitvoeren:
U kunt uw zoekopdracht verfijnen met extra opties, zoals het negeren van hoofdlettergevoeligheid ( grep -i
) of alleen zoeken naar hele woorden ( grep -w
).
Uitvoer omleiden naar een bestand
Als u specifieke zoekresultaten wilt opslaan om ze later te kunnen bekijken, kunt u de uitvoer van uw opdrachten naar een nieuw bestand omleiden.
Zoek bijvoorbeeld naar regels met de grep
opdracht en sla ze op in een nieuw bestand:
De >
operator maakt telkens een nieuw bestand of overschrijft een bestaand bestand. Om gegevens toe te voegen aan een reeds bestaand bestand, gebruikt u >>
in plaats van >
.
De opdrachten Head en Tail gebruiken
Wanneer u met grote bestanden op Linux werkt, hoeft u mogelijk alleen het begin of het einde van een bestand te bekijken. Dit is waar de head
and- tail
opdrachten in het spel komen.
Om de eerste 20 regels van een bestand weer te geven, gebruikt u:
Om de laatste 20 regels weer te geven, voert u het volgende uit:
In beide gevallen -n 20
geeft u aan dat u alleen de eerste of laatste 20 regels wilt zien. U kunt dit aantal aanpassen om meer of minder regels weer te geven, indien nodig. Beide opdrachten zijn standaard ingesteld op 10 regels.
Combineren tail
en head
kan u helpen navigeren door een specifieke sectie van een bestand. Om regels 10-14 van een bestand van 100 regels te bekijken, berekent u de beginregel vanaf het einde door de beginregel min één af te trekken van het totale aantal regels (100 – 9 = 91). Voer de volgende opdracht uit:
Hiermee worden de regels 10-14 weergegeven. U kunt de uitvoer controleren met wat u ziet less
.
Om bestanden, zoals logbestanden, continu bij te werken, kunt u tail -f
de wijzigingen in realtime bewaken.
Conclusie
Of u nu logs analyseert, met datasets werkt of gewoon een groot tekstbestand leest, deze strategieën zullen het proces aanzienlijk vereenvoudigen. U kunt ook aanvullende technieken verkennen om grote bestanden op Linux te vinden en ze via de terminal over te brengen.
Afbeelding tegoed: Unsplash . Alle wijzigingen en screenshots door Haroon Javed.
Geef een reactie