Bóson Treinamentos em Ciência e Tecnologia

Comandos pushd, popd e dirs – Manipulando a pilha de diretórios no Linux

Comandos pushd, popd e dirs no Linux Debian e Ubuntu

Manipulando a pilha de diretórios no Linux com os comandos pushd, popd e dirs

A pilha de diretórios é uma lista dos diretórios recém visitados em um sistema Linux. Podemos manipular essa lista com alguns comandos simples, o que é muito útil, por exemplo, ao criar scripts que naveguem pelos diretórios do sistema.

Os comandos que estudaremos são o pushd, popd e dirs.

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.

É possível também visualizar o topo da pilha de diretórios verificando o valor da variável do shell DIRSTACK

Vejamos como usar esses comandos. Suponha a seguinte estrutura de diretórios:

Dentro do diretório origem temos três diretórios: dirA, dirB e dirC. Dentro de dirA temos dirA1. Estamos dentro do diretório origem:

Vamos emitir uma sequência de comandos pushd para entrar em vários diretórios, salvando nossa atividade na pilha de diretórios do sistema:

Note que cada vez que emitimos o comando pushd seguido de um nome ou caminho de diretório, tornamos esse diretório o corrente e a pilha é mostrada no terminal. O diretório mais à esquerda é o que está no topo da pilha (mais recente), e o da direita é nosso diretório de origem (início da pilha).

Vamos executar agora o comando dirs para observar o conteúdo da pilha:

É mostrada claramente a sequência de diretórios que visitamos (da direita para a esquerda): /origem -> /origem/dirA -> /origem/dirB -> /origem/dirA1

Vamos fazer o caminho inverso agora, voltando por essa sequência de diretórios e eliminando-os da pilha, com o comando popd:

Note que, cada vez que executamos o comando popd, é mostrado qual diretório foi retirado da pilha, e com o auxílio do comando pwd confirmamos que o diretório corrente foi alterado para o que está no topo da pilha no momento. Repetimos o processo até voltar para nosso primeiro diretório, /origem

Caso você queira limpar toda a pilha de diretórios de uma única vez, basta emitir o comando dirs seguido da opção -c:

$ dirs -c

É isso aí! Vimos neste artigo como funcionam os comandos popd, pushd e dirs, usados para manipular a pilha de diretórios no Linix, e que podem ser usados em diversas situações, sendo a mais comum na criação de scripts do shell especializados.

 

Sair da versão mobile