..
não é especial, é só que ele já existe.
No Unix, Dos e MS-Windows, todos os diretórios possuem um diretório .
vinculado a si próprio e um diretório ..
vinculado ao diretório pai (ou próprio, se o diretório raiz).
Se ..
e .
for especial, é apenas porque você não pode removê-los (na verdade você pode, basta remover o diretório que os contém).
Portanto, você não pode nomear nenhum arquivo (outro) .
ou ..
.
No entanto, você pode criar arquivos ...
, \
, …
, ..
(note que existe um espaço após o ..
, mas você dificilmente pode vê-lo aqui, ou facilmente em você diretório lista) ou qualquer outro que você, como nome; O único caractere reservado é /
(Aviso - detalhes avançados: e null, null é um caractere especial, não usado para nada, exceto para marcar o fim das coisas e, às vezes, como um separador). .
não tem significado especial: não para nomes de arquivos, kernel ou shell, ele não precisa ser escapado. Na verdade, se um nome de arquivo começa com a, .
então é especial, o arquivo normalmente está oculto, mas ainda não precisa ser escapado.
a parte, de lado
Esse comportamento de arquivo oculto surgiu em uma implementação inicial de ls
onde o autor queria ocultar .
e ..
, portanto, eles escreveram código para ocultar todos os arquivos começando com a .
. Outros usuários perceberam esse bug / recurso e começaram a criar arquivos começando com a .
quando eles queriam que o arquivo fosse oculto.
Explicação da pergunta vinculada
Na pergunta que você vincula ao questionador, está tentando mover o arquivo para o diretório pai, ..
mas acaba renomeando para ...
, os arquivos que começam com um ponto ficam ocultos por padrão, por isso não conseguem encontrá-lo.
Ao usar mv no formulário mv a b
- Se você mudar para
.
ele, efetivamente, é uma operação sem, mas mv
trata-o como um erro.
- Se você mudar para
..
ele, o arquivo será movido para o diretório pai.
.
e..
já existe. E ponto não tem um significado especial.