Pipes gebruiken op de commandoregel, een basisoverzicht

Een van de essentiële functies van de opdrachtregel van Mac OS X, Linux of een andere Unix, is het begrijpen van enkele basisbegrippen over het gebruik van pijpen. In essentie kunt u met pipes de uitvoer van een opdracht naar de invoer van een ander commando sturen, zodat het volgende commando de terugkeer van de eerdere opdrachten kan manipuleren, aanpassen of bewerken. Weten hoe en wanneer u buizen moet gebruiken, is van vitaal belang voor een effectief gebruik van de commandoregel en het is een kernkennis voor Terminal-gebruikers.

Zonder verdere introductie, hier is wat informatie over opdrachtregelpijpen, wat ze doen, en het allerbelangrijkste, hoe de pijpen te gebruiken om de output van de commandoregel te besturen, en deze op effectieve wijze naar elders te 'piping':


Het pijpsymbool lijkt op |, (het is dezelfde sleutel als uw \ sleutel, als u in de war bent), en is enorm handig wanneer u op de opdrachtregel werkt. Hier zijn enkele voorbeelden:

ls -la | more

Hierdoor wordt het lijstcommando (met lange en alle vlaggen) uitgevoerd en wordt het doorverbonden naar het commando more, waardoor je de uitvoer één pagina per keer kunt bekijken.

ps aux | grep user

Deze opdracht neemt de uitvoer van de procesopdracht en rapporteert alleen procesinstanties behorende bij 'gebruiker'

Je kunt pijp met vrijwel alles gebruiken, dus gebruik je fantasie.

Een ander veelgebruikt gebruik voor pijpen is om te combineren met "minder" om de leesbaarheid van langdurige uitvoer te verbeteren, wanneer u 'kat' of iets dergelijks gebruikt:

cat /etc/passwd | less

Pijpleidingen kunnen ook op zeer geavanceerde manieren worden gebruikt, waarbij de uitvoer van elke opdracht wordt genomen en die opdrachtuitvoer wordt omgeleid naar de invoer van een andere opdrachtreeks, en vervolgens die uitvoer wordt genomen en opnieuw wordt omgeleid, in een lange reeks opdrachten en leidingen, dit zou er ongeveer zo uit kunnen zien:

cat /etc/OSXDaily.txt | grep "osxdaily test" '\n' | sort | uniq | less

Pijpen kunnen ook worden gecombineerd met omleidingen en zowat elke andere methode om iets in de terminal te manipuleren.

We behandelen de Mac OS X-opdrachtregel relatief vaak hier bij OS X Daily, maar ons recente artikel Basisprincipes van bruikbaarheid van de command line: Redirection had waarschijnlijk ook een beetje over pijpen moeten bevatten, dus hier zijn we dan. Meer geavanceerde doeleinden kunnen het best worden behandeld in een andere, diepgaande zelfstudie om verder te kijken dan de basis, dus houd het in de gaten.