Skip to main content

What does the @ mean in ls -l? [Resolved]

I am using Mac OSX. When I type ls -l I see something like

drwxr-xr-x@ 12 xonic  staff    408 22 Jun 19:00 .
drwxr-xr-x   9 xonic  staff    306 22 Jun 19:42 ..
-rwxrwxrwx@  1 xonic  staff   6148 25 Mai 23:04 .DS_Store
-rw-r--r--@  1 xonic  staff  17284 22 Jun 00:20 filmStrip.cpp
-rw-r--r--@  1 xonic  staff   3843 21 Jun 21:20 filmStrip.h

What do the @'s mean?

Question Credit: Larry Wang
Question Reference
Asked September 17, 2019
Posted Under: Unix Linux
7 Answers

It indicates the file has extended attributes. You can use the xattr command-line utility to view and modify them:

xattr -l file # lists the names of all xattrs.
xattr -w attr_name attr_value file # sets xattr attr_name to attr_value.
xattr -d attr_name file # deletes xattr attr_name.
xattr -c file # deletes all xattrs.
xattr -h # prints help

credit: Bernhard Wagner
Answered September 17, 2019

In Snow Leopard, at least, you can do this to show more information:

ls -l@

credit: Kevin Cantu
Answered September 17, 2019

It has extended attributes - See the OSX man page here for more information on ls.

credit: Frozenskys
Answered September 17, 2019

You may want to have a look at this post in the Apple mailing lists. It explains that the @ shows that the Finder has extended attributes other than ACL.

credit: zugaldia
Answered September 17, 2019

I think it means that the file/directory has extended attributes.

credit: Kevin
Answered September 17, 2019

In addition to Michael Mrozek's answer:

On OSX 10.10 (Yosemite) you can have to use these attrx parameters:

xattr -l file
xattr -w attr_name attr_value file
xattr -d attr_name file

credit: meshfields
Answered September 17, 2019
Your Answer