Bestandsbeheer

Is lijst alleen mappen recursief in Linux?

Is lijst alleen mappen recursief in Linux?

Het woord "recursief" verwijst naar het feit dat commando's van een Linux- of Unix-besturingssysteem de inhoud van mappen behandelen, en als een map submappen en documenten heeft, werkt de instructie nog steeds met al die documenten (recursief). Het kan zijn dat de onderliggende map zijn eigen set bestanden en mappen heeft (bijvoorbeeld grote mappen), enzovoort. Je zult verschillende Linux-instructies gebruiken om recursief door elke map te gaan voordat je de rand van de opgegeven map bereikt. Op dat niveau keren Linux-instructies terug naar een afslag van de boom en herhalen ze het proces voor alle bestaande submappen that. In deze tutorial leer je alle methoden om de mappen recursief weer te geven.

Voorbeelden van eenvoudige lijstmappen

Allereerst moet u weten hoe u alle mappen van uw Linux-systeem kunt weergeven met behulp van het eenvoudige list-commando. Open de opdrachtregelterminal en probeer de onderstaande "ls'"-opdracht om alleen de mappen weer te geven. Het zal niet alleen de mappen weergeven, maar ook het totale aantal submappen en bestanden die zich daarin bevinden. De uitvoer toont de mappen met de informatie over hun eigenaar, groep, lees-schrijfrechten en de datum waarop de mappen zijn gemaakt.

$ ls -l

Om alle mappen en bestanden op uw Linux-systeem weer te geven, moet u "-la" gebruiken in plaats van eenvoudig "-l" in de lijstopdracht. Voer daarom de bijgewerkte opdracht uit om dit te doen. De uitvoer toont alle bestanden en mappen samen met hun aanvullende informatie.

$ ls -la

Om eenvoudig de mappen weer te geven zonder aanvullende informatie, probeert u de onderstaande opdracht gevolgd door de vlag "-d".

$ ls-d */

U kunt dezelfde opdracht ook gebruiken met kleine aanpassingen om de mappen samen met hun aanvullende informatie weer te geven. U hoeft alleen de vlag "-l" als volgt aan deze opdracht toe te voegen:

$ ls -l -d */

Om alleen het totale aantal bestanden in de specifieke thuismap te controleren, probeert u de onderstaande opdracht in de shell. U krijgt het totale aantal bestanden in uw Linux-besturingssysteem.

$ ls -l | egrep -v '^d'

Voorbeeld van het recursief weergeven van mappen

Er zijn verschillende soorten recursieve opdrachten beschikbaar in Linux-systemen, die kunnen worden gebruikt om de mappen recursief weer te geven. Om elk van hen afzonderlijk te begrijpen, gaat u ervan uit dat u 5 bestanden in uw Linux-map hebt met de naam "Documenten".

Lijst recursief met de vlag "-lR"

Om de vlag "-lR" in uw query te gebruiken om recursief alle mappen van uw Linux-systeem weer te geven, is dit de eerste methode om dit te doen. Bij het uitvoeren van de onderstaande lijstopdracht, worden alle mappen en hun submappen weergegeven, samen met hun bonusdetails, zoals weergegeven in de uitvoer.

$ ls -lR

Laten we gewoon recursief alle bestanden of mappen weergeven van een specifieke map of map van uw Linux-systeem. Voeg hiervoor het locatiepad van de specifieke map toe om deze recursief weer te geven. We willen recursief alle bestanden en mappen weergeven van de map "Documenten" die zich in de map "thuis" bevinden met behulp van de hieronder bijgewerkte opdracht. De uitvoer toont alle bestanden en mappen in de map "Documenten" samen met de extra informatie.

$ ls -lR /home/aqsayasin/Documenten/

Recursief weergeven met de opdracht "Zoeken"

Maak jezelf duidelijk dat niet alle Linux-systemen, bijv.g., macOS, Unix-achtig besturingssysteem, hebben de keuze om "-R" te gebruiken om de mappen weer te geven. In dat geval zijn er andere commando's beschikbaar om aan onze behoeften te voldoen, namelijk de commando's "find" en "print". In deze opdracht geven we een pad naar een map samen met de hefboomwerking van het gebruik van de opdracht "-ls". Wanneer "-ls" wordt gebruikt in de opdracht, betekent dit dat het ook de extra informatie toont over de aanwezige bestanden en mappen van een specifieke map. Probeer de onderstaande opdracht in de shell om recursief alle bestanden en mappen van de map "Documenten" weer te geven.

$ zoek /home/aqsayasin/Documents/ -print -ls

Nu moet je dezelfde instructie in de shell proberen met een kleine verandering. We zullen het gebruik van de vlag "-ls" in deze opdracht vermijden om te stoppen met het tonen van aanvullende informatie over bestanden. Voer de onderstaande query uit in de shell en je hebt de weergegeven uitvoer.

$ zoek /home/aqsayasin/Documents/ -print

Lijst recursief met het commando "-du"

Laten we een ander voorbeeld bekijken om de bestanden of mappen recursief weer te geven met een andere nieuwe methode. Deze keer zullen we het commando "-du" gebruiken om ons doel te bereiken. Dit commando bevat de “-a vlag erin. Samen met de vlaggen moeten we ook de maplocatie specificeren. Laten we de onderstaande instructie in de terminal-shell uitvoeren om recursief alle mappen of bestanden van de map "Documenten" weer te geven. De uitvoer toont de 5 records ervoor, zoals hieronder weergegeven:. U kunt zien dat deze opdracht ook het aantal beten in elk bestand toont.

$ du -a /home/aqsayasin/Documenten/

Lijst recursief met het commando "boom"

Last but not least hebben we een zeer eenvoudige en gebruiksvriendelijke "boom" -opdrachtmethode om de bestanden of mappen recursief weer te geven. We zullen tot nu toe geen vlag in deze opdracht gebruiken. U moet de maplocatie opgeven samen met het trefwoord "boom". Laten we er een voorbeeld van hebben met behulp van de onderstaande opdracht:. De uitvoer toont de uitvoer van het vertakte type "boom" van de map "Documenten". Het toont 0 mappen en 5 bestanden in de uitvoer.

$ boom /home/aqsayasin/Documenten/

Laten we hetzelfde "boom" -commando proberen met een andere locatie. Deze keer geven we recursief de mappen weer van de 'Home'-directory van de gebruiker "aqsayasin". De uitvoer toont de takken van de map "Home" met in totaal 14 verschillende mappen, submappen en 5 bestanden.

$ boom /home/aqsayasin/

Conclusie

We hebben alle recursieve methoden geprobeerd om de mappen en bestanden recursief weer te geven, bijv.g., "-lR" vlag, zoek en print, du en tree commando

Hoe u uw gamesessie op Linux kunt vastleggen en streamen
In het verleden werd het spelen van games alleen als een hobby beschouwd, maar met de tijd zag de game-industrie een enorme groei in termen van techno...
Beste spellen om te spelen met handtracking
Oculus Quest introduceerde onlangs het geweldige idee van handtracking zonder controllers. Met een steeds toenemend aantal games en activiteiten die f...
OSD-overlay tonen in Linux-apps en -games op volledig scherm
Het spelen van games op volledig scherm of het gebruik van apps in de modus volledig scherm zonder afleiding kan u afsnijden van relevante systeeminfo...