2.7 Referências absoluta e relativa
Existem duas vias para se apontar um alvo/destino em um ambiente GNU/Linux:
- Referência absoluta: caminho completo (absoluto) para o diretório, arquivo ou recurso;
- Referência relativa: este é um apontamento que leva em consideração a sua posição atual no sistema.
Vamos a um exemplo prático. Para isso, considere a estrutura da figura abaixo:
Figura 4 - Estrutura de diretórios
Veja as formas possíveis de se deslocar do diretório var para o bkp (Figura 4):
- Referência absoluta: /etc/bkp
- Referência relativa: ../etc/bkp
Os 2 pontos (..) indicam um nível acima. Vamos supor que você está no diretório bkp (Figura 4) e deseja voltar para a raiz do sistema (/); então você necessita subir 2 níveis, e para isso deve usar a representação (../..). Os primeiros 2 pontos tiram você do diretório bkp e o colocam dentro do etc; a próxima ocorrência irá tirá-lo do diretório etc e, dessa forma, você estará no diretório raiz, representado por um sinal de barra (/).
Devemos ter muita atenção ao utilizar referência relativa, pois este tipo de apontamento é variável. Para fixar o entendimento, veja os exemplos abaixo, baseados na estrutura da Figura 4:
Diretório atual: var
Destino: arquivos
Via referência absoluta: /etc/arquivos
Via referência relativa: ../etc/arquivos
Veja outro exemplo:
Diretório atual: arquivos
Destino: bkp
Via referência absoluta: /etc/bkp
Via referência relativa: ../bkp
Na referência absoluta nosso ponto de partida é a raiz do sistema; como tudo está abaixo deste nível, independentemente de onde estiver no sistema, o destino será sempre alcançado. Já na referência relativa esse apontamento tem que se adequar a sua posição atual no sistema, ou seja, acaba sendo uma forma relativa/volátil de apontar um destino.