Pilha de Diretórios (comandos pushd, popd e dirs)

A Pilha de Diretórios é um recurso do GNU Bash voltado para facilitar a navegação e manipulação de diretórios. É um recurso onde o usuário pode criar "atalhos" dentro de uma pequena base de diretórios que podem ser facilmente acessados ou referenciados dentro de uma seção do shell. Devido a grande popularidade do GNU Bash vale a pena conhecer esse recurso.

[ Hits: 21.441 ]

Por: Jeremias Alves Queiroz em 07/01/2016


Introdução



Uma das muitas funções de um Shell Unix é servir como um navegador de arquivos. O shell GNU Bash dispõe de recursos que facilitam a navegação por toda a árvore de diretórios. Dentre esses recursos o mais conhecido é o auto completar através da tecla "TAB", que além de poder completar comandos pode também completar caminhos de arquivos e diretórios. Outro recurso importante e muito utilizado é o histórico, onde é possível repetir comandos e voltar a diretórios mais altos na estrutura da árvore apenas repetindo comandos executados previamente.

Porém o GNU Bash fornece outro recurso bastante interessante do qual eu encontrei pouca documentação nos sites brasileiros, trata-se da Pilha de Diretórios referenciado no manual do GNU Bash como "Directory Stack".

Me encorajei a escrever esse texto pois em sites brasileiros encontrei apenas dois posts referenciando este conteúdo, no caso:
Este texto foi escrito tendo o manual do GNU Bash como referência constante, portanto sua estrutura é semelhante. Não executei uma tradução fiel do texto do manual, porém escrevi sobre o assunto da forma que eu entendi e da forma que julguei que ficaria mais acessível, também inverti a ordem de alguns parágrafos justamente visando um texto mais acessível e lógico.

    Próxima página

Páginas do artigo
   1. Introdução
   2. A pilha de diretórios e seus comandos - pushd
   3. A pilha de diretórios e seus comandos - dirs
   4. A pilha de diretórios e seus comandos - popd
   5. A pilha de diretório e as Expansões do Shell
   6. Conclusão
Outros artigos deste autor

Mais desempenho no GNU Emacs com o YASnippet

Leitura recomendada

Ubuntu - Manual do Iniciante

Lógica para computação - parte III

Boot Seguro LILO

Interfaces Gráficas no Linux

Listando os serviços Linux com o Systemctl

  
Comentários
[1] Comentário enviado por fabio em 07/01/2016 - 07:53h

Excelente artigo, favoritado! Já estou inclusive usando. Fiz assim no meu ~/.bashrc:

#definindo pilha - diretorios mais usados
pushd dir1
pushd dir2
...
pushd dir8
cd

Daí quando abro um terminal já tenho a pilha definida com meus principais diretórios e a partir de agora passarei a navegar com "cd ~[numero]". Show de bola!

[2] Comentário enviado por danniel-lara em 07/01/2016 - 09:54h

Parabéns muito bom mesmo

[3] Comentário enviado por azk em 07/01/2016 - 14:45h

excelente artigo, de fato!
como o Fabio fez, tbm estou fazendo....

[4] Comentário enviado por Arthur_Hoch em 07/01/2016 - 23:21h

Estou usando.
Valeu!!!

Para criar arquivos é melhor utilizar " $ >" do que "$ touch":
[arthurhoch@halt ~]$ time > oi
real 0m0.000s
user 0m0.000s
sys 0m0.000s
[arthurhoch@halt ~]$ rm oi
[arthurhoch@halt ~]$ time touch oi
real 0m0.047s
user 0m0.000s
sys 0m0.000s

[5] Comentário enviado por luiztux em 08/01/2016 - 13:09h

Excelente!
Parabéns pelo ótimo artigo. Carecíamos de informações assim.


[6] Comentário enviado por removido em 13/01/2016 - 23:45h

Parabéns. Realmente há poucas fontes e faz um tempo que queria aprender isto.

----------------------------------------------------------------------------------------------------------------
http://24.media.tumblr.com/tumblr_m62bwpSi291qdlh1io1_250.gif

# apt-get purge systemd

Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it. — Edward Snowden


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts