O que significa o sinal “@” na saída ls -l?

11

Eu tenho essa saída no MacOSX:

$ ls -l
total 40
-rwxr-xr-x@ 1 levente  staff   52 30 Sep 15:38 pl
-rwxr-xr-x  1 levente  staff  675 14 Feb 17:07 plplay
-rwxr-xr-x@ 1 levente  staff  662 26 Jan 14:13 plstart
-rwxr-xr-x@ 1 levente  staff  296  1 Dec 11:50 plstop
-rwxr-xr-x@ 1 levente  staff  268 29 Dec 18:44 plweb

O que significa "@" ao lado das permissões?

    
por Leventix 14.02.2011 / 18:21

2 respostas

15

Isso significa que esses arquivos possuem Atributos Estendidos do sistema de arquivos que não são as permissões normais do Unix. Tente fazer o xsttr plstart e ver que tipo de coisas estão definidas.

    
por 14.02.2011 / 18:27
5

Kashani acertou com o uso de xattr para exibir os bits extra complicados. Mais especificamente, no OSX, é provável que seja o chamado Fork de Recursos. O sistema de arquivos subjacente que o OSX usa, o HFS +, possui segmentos de dados extras que podem armazenar todo tipo de informação. Aliás, você também pode ver a mesma coisa em montagens SMB, NTFS, etc na forma de arquivos ._FILENAME.

Para um artigo completo em Resource Forks, consulte o artigo da wikipedia ou o Apple Developer .

    
por 14.02.2011 / 19:52