O que há de especial nos diretórios cujos nomes começam com um ponto?

20

Eu queria saber qual a diferença entre esses dois:

~/somedirectory/file.txt

e

~/.somedirectory/file.txt

É muito difícil fazer isso no Google, pois eu não sabia como explicar o . quando nem sabia como chamá-lo. Mas alguém pode descrever a diferença entre incluir o ponto e excluí-lo?

    
por Dark Templar 30.09.2011 / 16:55

5 respostas

14

Em sistemas semelhantes a unix, todos os diretórios contêm duas entradas, . e .. , que representam o próprio diretório e seu pai respectivamente. Essas entradas não são interessantes na maioria das vezes, portanto, ls as oculta e os curingas de shell, como * , não as incluem. Mais geralmente, ls e curingas ocultam todos os arquivos cujo nome começa com . ; essa é uma maneira simples de excluir . e .. e permitir que os usuários ocultem outros arquivos das listagens. Além de ser excluído das listagens, não há nada especial sobre esses arquivos.

O Unix armazena os arquivos de configuração por usuário no diretório pessoal do usuário. Se todos os arquivos de configuração aparecessem nas listagens de arquivos, o diretório inicial ficaria cheio de arquivos com os quais os usuários não se importam todos os dias. Portanto, os arquivos de configuração sempre começam com . : normalmente, o arquivo de configuração do aplicativo Foo é chamado algo como .foo ou .foorc . Por esse motivo, os arquivos de configuração do usuário são geralmente conhecidos como arquivos de ponto .

    
por 02.10.2011 / 02:54
13

Para começar, com ~/somedirectory e ~/.somedirectory são diretórios diferentes ( mkdir não falhará com a mensagem File Exists ).

O comando ls não mostrará as entradas que começam com . .

Se você ls -a , ls mostrará os dois diretórios.

    
por 30.09.2011 / 17:06
7

Para detalhes sobre o sistema de arquivos Unix verifique o padrão . Especificamente, os arquivos dot são usados para arquivos de configuração em um diretório de usuários e, se um programa tiver mais de um, ele deve colocá-los em um diretório de pontos.

Isso oculta os arquivos do usuário, , a menos que eles desejem encontrá-los . Dessa forma, eles não atrapalham e as ferramentas não mexem com elas acidentalmente.

    
por 30.09.2011 / 17:11
4

O principal "." em um diretório ou nome de arquivo faz com que esse diretório ou arquivo fique oculto ao executar o comando ls .

    
por 30.09.2011 / 16:59
1

Como o @DaveNay já disse, esse período fará com que o arquivo ou diretório fique oculto.

Para sua segunda pergunta implícita, é assim que você pesquisa no google:

Basta digitar na caixa de pesquisa: período de linux antes do nome

    
por 30.09.2011 / 17:07