Een Mac-equivalent van Unix "tree"-commando gebruiken om mapbomen op Terminal te bekijken

Anonim

Mac-gebruikers die een Unix-achtergrond hebben, kunnen het op prijs stellen als ze weten hoe ze het equivalent van de Unix-opdracht "boom" in macOS en Mac OS X moeten implementeren. Er zijn eigenlijk een paar verschillende manieren om een ​​mappenboom weer te geven in de Terminal van Mac OS X behandelen we een eenvoudig boom-equivalent dat wordt bereikt via een alias, en hoe je native 'tree' op een Mac installeert, net zoals je ziet in Ubuntu of elders in Linux.

Dit is duidelijk bedoeld voor gebruikers van de opdrachtregel, maar als je meer tijd in de Finder van de Mac doorbrengt, zou je het op prijs kunnen stellen om daar recursief bestanden en mapinhoud weer te geven, die vergelijkbaar kan zijn, maar duidelijk geen mappenboom op de terminal.

Maak een boom die gelijkwaardig is aan het weergeven van mapbomen in Terminal voor Mac OS X

Met een eenvoudige alias kunt u mappenbomen bekijken vanaf de opdrachtregel van Mac OS:

  1. Start Terminal of iTerm als je dat nog niet hebt gedaan
  2. Open je .bashrc- of .zshrc-profiel in je favoriete teksteditor, we gebruiken nano omdat nano eenvoudig is:
  3. nano .zshrc

  4. Plak op een nieuwe regel de volgende alias:
  5. "

    alias tree=find . -druk | sed -e &39;s;/;|____;g;s;____|; |;g&39;"

  6. Druk op Control+O en Control+X om nano op te slaan en te verlaten (of zoals gebruikelijk te stoppen met vim of emacs), je boomstructuuropdracht voor het afdrukken van mappenbomen is nu klaar voor gebruik

Open een nieuwe Terminal of laad uw Terminal-profiel opnieuw en u bent klaar om de nieuwe boomalias te gebruiken.

Directoryboomstructuur weergeven met 'boom' op de Mac

Nu je je alias hebt geïmplementeerd, kun je de opdracht 'boom' gebruiken om de hiërarchische structuur van de huidige werkmap of directory op de opdrachtregel weer te geven. Als je bijvoorbeeld in de root / van een Mac zit en op 'tree' drukt, dan zal je de hiërarchische structuur van alles op de Mac weergeven (dit duurt even en wordt niet aanbevolen, maar biedt een demonstratie van hoe het werkt )

boom

Het boomcommando kan het beste worden gebruikt in subdirectories met een zekere mate van inperking, anders dump je de structuur van het hele bestandssysteem naar buiten vanuit de huidige werkdirectory.

Installing 'tree' for the Mac Command Line

Als je wat meer controle over 'tree' wilt, zoals de mogelijkheid om een ​​map te specificeren, of je wilt gewoon het exacte 'tree'-equivalent dat uit de Unix-wereld komt, dan kun je homebrew of macports gebruiken om de boom rechtstreeks in macOS en Mac OS X te installeren:

'boom' installeren met Homebrew

brouw installatieboom

'boom' installeren met MacPorts

sudo port install tree

Mijn voorkeur gaat uit naar Homebrew, maar gebruik wat voor jou werkt. Eenmaal geïnstalleerd vanuit een van beide, zal het typen van 'tree' de mappenboom van elke map op de Mac weergeven.

Let op: om conflicten te voorkomen, wilt u in de eerste stap geen tree-alias gebruiken en daarna ook de tree-opdracht installeren. U kunt beide implementeren, maar u wilt de alias waarschijnlijk hernoemen naar 'treed' of iets dergelijks.

Een Mac-equivalent van Unix "tree"-commando gebruiken om mapbomen op Terminal te bekijken