Commande ls: que signifie le @ en mode fichier et comment s'en débarrasser? [dupliquer]

26

Après avoir téléchargé des fichiers sur OSX et que je souhaite les utiliser, ils ont souvent un @ ajouté en mode fichier chaque fois que je fais un ls -l. Voici un exemple de sortie, voir @le début de la ligne:

ls -l *.php
-rw-r--r--@ 1 username  staff  11179 Dec 17  2010 class.mysql.php
-rw-r--r--@ 1 username  staff     24 Nov  1  2010 info.php
-rw-r--r--@ 1 username  staff     61 Dec 23  2010 page.php
-rw-r--r--@ 1 username  staff   1157 Dec 17  2010 photo.php

Je pense que c'est une sorte de verrouillage du méganisme, n'est-ce pas? Et comment m'en débarrasser?

Björn
la source

Réponses:

38

À partir de la section ls manual ( man ls) Le format long

If the file or directory has extended attributes, the permissions field printed by the -l option is followed by a '@' character.

Vous pouvez ensuite afficher les attributs étendus avec -@

-@ Display extended attribute keys and sizes in long (-l) output.

Pour manipuler des attributs étendus, vous pouvez utiliser la xattrcommande. Voir par exemple Comment supprimer les attributs étendus sous Mac OS X ou comment traiter les attributs étendus sous OS X

Matteo
la source
Merci, réponse très complète! J'étais sur le point de demander comment supprimer les attributs, mais je vois que vous venez de mettre à jour votre message :)
Björn
Je viens de me rendre compte plus tard qu'il y avait une deuxième partie de la question :-)
Matteo