O que é ponto duplo (..) and single dot (.) em Linux?

o comando ls -ai mostra que . e .. têm os seus inodes iguais à pasta actual e à pasta-mãe, respectivamente.

Alguém me pode dizer o que são exactamente?

São ficheiros reais ou até links rígidos? Mas como eu já soube, não é permitido criar um link duro para um diretório.

Author: codeforester, 2014-04-23

4 answers

Eles são mapas de nome especial inode que contam como ligações duras (eles aumentam a contagem de ligações) embora eles não sejam realmente ligações duras, uma vez que, como você disse, diretórios não podem ter ligações duras. Leia mais aqui: ligações duras e nós do sistema de ficheiros Unix (inodes)

 7
Author: e.dan, 2014-04-23 10:56:51

. representa a pasta em que está e .. representa a pasta-mãe.

Da definição do ponto :

Esta é uma sequência curta (isto é, sequência de caracteres) que é adicionada a o fim do nome base (ou seja, a parte principal do nome) de um arquivo ou Diretório, a fim de indicar o tipo de arquivo ou diretório.

Em sistemas operativos Unix-like cada directório contém, no mínimo,, um objecto representado por um único ponto e outro representado por dois pontos sucessivos. o primeiro refere-se ao próprio directório e ao este último refere-se ao seu directório-mãe (isto é, o directório que contém). estes itens são criados automaticamente em cada directório, como pode ser visto usando o comando ls com a sua opção - a (que a instrui a mostrar todo o seu conteúdo, incluindo escondido item).

 31
Author: Rahul Tripathi, 2014-04-23 10:50:12

Eles não são elos duros. Você pode mais pensar como uma mão curta para (.) este directório e (..) pai deste directório.

Tente remover ou mudar o nome . ou .. então você entende por que não é uma ligação dura.

 0
Author: Nafis Ahmad, 2014-04-23 10:59:39

. representa a pasta actual em que está agora e .. representa a pasta-mãe.

Exemplo: Suponha que está na pasta /remote/speed3/users/devraj/ e que queria mudar para a pasta-mãe, ou seja /remote/speed3/users, então use cd..

/remote/speed3/users/dpawar> cd ..

E se quiser definir a localização de um ficheiro no ficheiro actual da bash de pastas use . com o nome do ficheiro como este ./nome do ficheiro

 -2
Author: Dnyaneshwar Pawar, 2018-09-05 13:47:12