Os comandos que estudaremos são o pushd, popd e dirs.
pushd: adiciona diretórios a essa pilha e altera o diretório atual.
popd: remove diretórios da pilha e muda o diretório atual para o diretório que estiver no topo da pilha, após a remoção.
dirs: mostra o conteúdo da pilha de diretórios.
Esses comandos são comandos internos do shell que nos permitem manipular a pilha de diretórios. Assim, podemos mudar de diretório e voltyar para o diretório de origem com facilidade.
http://www.bosontreinamentos.com.br/linux/comandos-pushd-popd-e-dirs-manipulando-a-pilha-de-diretorios-no-linux/
Por meio da seguinte explicação, consegui ter uma pequena noção do assunto que eu nunca havia estudado. Se quiser ler o artigo na íntegra, é só acessar o link da fonte.
"Como funciona um Pilha?
Para entender como uma pilha funciona, faremos uma analogia com o mundo real.
Imagine uma pilha de pratos na cozinha. Se quisermos utilizar um prato, pegamos um do topo desta pilha (último prato). Se necessitarmos de outro, pegamos o próximo da pilha (que agora é o último), e assim por diante.
Quando um prato é lavado, após seu uso, pode ser recolocado novamente na pilha de pratos, sempre no topo. Esse prato recém-colocado na pilha passa a ser o último, e o primeiro que será retirado quando precisarmos usar um prato novamente.
Essa é a ideia geral de uma estrutura de dados do tipo pilha. Nela, os dados são inseridos na pilha (empilhados), e acessados em ordem inversa (o último a ser inserido é sempre o primeiro a ser utilizado). Colocar um elemento no topo de uma pilha é uma operação que recebe um nome especial: push. Já a remoção de um elemento do topo da pilha é uma operação denominada pop.
Por conta deste modo de operação, as pilhas são classificadas como estruturas de dados de armazenamento Last-In, First-Out – LIFO, “o último a entrar é o primeiro a sair”, pois o último item inserido na pilha é sempre o primeiro a ser removido (ou lido)."
Fonte: http://www.bosontreinamentos.com.br/estruturas-de-dados/estruturas-de-dados-pilhas/
Bons estudos.