After I download files on OSX and then want to use them, they often have an @ appended on the file mode whenever I do a ls -l. Here is an example output, see the @ near the beginning of the line:

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

I think it is some kind of locking meganism, is that right? And how do I get rid of it?


1 Answer 1


From the ls manual (man ls) section The Long Format

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

You can then display the extended attributes with -@

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

To manipulate extended attributes you can use the xattr command. See for example How do I remove the extended attributes in Mac OS X or Dealing With Extended Attributes on OS X

  • Thank you, very complete answer! I was just about to ask how to remove any attributes, but I see you have just updated your post :)
    – Björn
    Jul 26, 2013 at 5:13
  • I just realized later that there was a second part in the question :-)
    – Matteo
    Jul 26, 2013 at 5:20

Not the answer you're looking for? Browse other questions tagged .