# pushd / popd



### pushd:

```bash
~ master* ⇡
❯ pushd /usr/local/bin
/usr/local/bin ~

/usr/local/bin
❯ pushd /etc
/etc /usr/local/bin ~

/etc
❯ pushd /Users/bruno/Documents
~/Documents /etc /usr/local/bin ~

~/Documents master* ⇡
❯ pushd /Users/bruno/Music
~/Music ~/Documents /etc /usr/local/bin ~

```

### dirs:

```bash
~/Music master* ⇡
❯ dirs -l -v
0	/Users/bruno/Music
1	/Users/bruno/Documents
2	/etc
3	/usr/local/bin
4	/Users/bruno

```

### naviguer avec pushd:

```bash
~/Music master* ⇡
❯ dirs -l -v
0	/Users/bruno/Music
1	/Users/bruno/Documents
2	/etc
3	/usr/local/bin
4	/Users/bruno

# On avance de 2 répertoires dans la pile 0.1.2 (en partant du haut) => /etc
~/Music master* ⇡
❯ pushd +2
/etc /usr/local/bin ~ ~/Music ~/Documents

# On avance de 1 répertoire dans la pile 0.1 (en partant du bas) => ~/Music
/etc
❯ pushd -1
~/Music ~/Documents /etc /usr/local/bin ~

~/Music master* ⇡
❯ dirs -l -v
0	/Users/bruno/Music
1	/Users/bruno/Documents
2	/etc
3	/usr/local/bin
4	/Users/bruno

```

### popd:

Sans argument, supprime le 1er répertoire de la pile, et va au suivant.

```bash
/etc
❯ dirs -l -v
0	/etc
1	/usr/local/bin
2	/Users/bruno
3	/Users/bruno/Music
4	/Users/bruno/Documents

/etc
❯ popd
/usr/local/bin ~ ~/Music ~/Documents

/usr/local/bin
❯ dirs -l -v
0	/usr/local/bin
1	/Users/bruno
2	/Users/bruno/Music
3	/Users/bruno/Documents

```

Option -n (?????)

```bash
/usr/local/bin
❯ dirs -l -v
0	/usr/local/bin
1	/Users/bruno
2	/Users/bruno/Music
3	/Users/bruno/Documents

/usr/local/bin
❯ popd -n
/usr/local/bin ~ ~/Music ~/Documents

/usr/local/bin
❯ dirs -l -v
0	/usr/local/bin
1	/Users/bruno
2	/Users/bruno/Music
3	/Users/bruno/Documents

```

popd +1 (supprime en partant du haut de la pile 0..1)

```
❯ dirs -l -v
0	/usr/local/bin
1	/Users/bruno
2	/Users/bruno/Music
3	/Users/bruno/Documents

/usr/local/bin
❯ popd +1
/usr/local/bin ~/Music ~/Documents

```

popd -1 (supprime en partant du bas de la pile 0..1)

```bash
/usr/local/bin
❯ dirs -l -v
0	/usr/local/bin
1	/Users/bruno/Music
2	/Users/bruno/Documents

/usr/local/bin
❯ popd -2
~/Music ~/Documents

```

