even snel van map wisselen

cd (change directory) is samen met ls het eerste commando dat je leert in de terminal. Je typt een mapnaam en je staat er. Toch zit er meer achter dan de meeste beginners weten, vooral die ene handige truc: cd -. Hieronder tien genummerde tips die je op weg helpen.
Typ je cd zonder verder iets erachter, dan spring je meteen naar je home-map, ongeacht waar je vandaan komt:
cd
pwd
/home/dexter
Dit is precies hetzelfde als cd ~ typen.
Twee puntjes staan voor de bovenliggende map. Zit je in /home/dexter/Documenten, dan breng je cd .. je terug naar /home/dexter:
cd Documenten
pwd
cd ..
pwd
/home/dexter/Documenten
/home/dexter
Je kunt .. combineren met een schuine streep om meerdere mappen tegelijk over te slaan:
cd ../..
Dit gaat twee mappen omhoog. Elke extra /.. betekent nog een niveau hoger.
Dit is dé tip van dit artikel. Met cd - (een streepje) spring je terug naar de map waar je hiervoor was, ongeacht hoe ver die weg is:
cd /var/log
cd /etc
cd -
/var/log
Handig als je even snel iets moet checken in een andere map en meteen weer terug wilt zonder het hele pad opnieuw te typen.
Gebruik je cd - nogmaals, dan ga je weer terug naar waar je was. Zo wissel je met één commando steeds heen en weer tussen twee mappen:
cd /var/log # je bent nu in /var/log
cd /etc # je bent nu in /etc
cd - # terug naar /var/log
cd - # weer terug naar /etc
Let op: cd - onthoudt maar één vorige locatie, geen hele geschiedenis.
Wat cd - doet, is eigenlijk niets magisch: het springt naar de omgevingsvariabele $OLDPWD, die bash automatisch bijhoudt.
cd /tmp
echo $OLDPWD
/home/dexter
Je kunt $OLDPWD dus ook gebruiken in scripts of andere commando's, niet alleen met cd.
De tilde ~ staat voor je eigen home-map, maar je kunt ook naar de home-map van een andere gebruiker springen:
cd ~ # jouw home-map
cd ~dexter # home-map van gebruiker dexter
Een pad dat begint met / is absoluut en telt vanaf de root van het bestandssysteem. Een pad zonder / vooraan is relatief aan je huidige map:
cd /home/dexter/Downloads # absoluut: werkt overal vandaan
cd Downloads # relatief: alleen als je al in /home/dexter zit
Als beginner is het goed om dit onderscheid helder te hebben, want het verklaart waarom hetzelfde commando soms wel en soms niet werkt.
Bevat een mapnaam een spatie, zet die dan tussen aanhalingstekens of ontsnap de spatie met een backslash:
cd "Mijn Documenten"
cd Mijn\ Documenten
Zonder dat ziet bash twee losse argumenten en krijg je een foutmelding.
Typ de eerste letters van een mapnaam en druk op Tab. Bash vult de rest automatisch aan, of laat bij twijfel de mogelijke opties zien:
cd Doc<Tab>
cd Documenten/
Dit scheelt niet alleen typewerk, maar voorkomt ook typefouten in lange mapnamen.
| Tip | Commando | Wat het doet |
|---|---|---|
| 1 | cd | Ga naar je home-map |
| 2 | cd .. | Ga één map omhoog |
| 3 | cd ../.. | Ga meerdere mappen omhoog |
| 4 | cd - | Ga terug naar de vorige map |
| 5 | cd - (herhaald) | Wissel heen en weer tussen twee mappen |
| 6 | $OLDPWD | Bevat de vorige map |
| 7 | cd ~gebruiker | Ga naar de home-map van een andere gebruiker |
| 8 | absoluut vs. relatief pad | Bepaalt vanaf waar het pad telt |
| 9 | cd "map naam" | Ga naar een map met spaties in de naam |
| 10 | cd Doc<Tab> | Laat bash de mapnaam aanvullen |
Met deze tien tips kun je vlot door je bestandssysteem navigeren zonder steeds lange paden te typen. De belangrijkste om te onthouden: cd - bespaart je op termijn de meeste toetsaanslagen.
Nog geen reacties
Reactie plaatsen