Was bedeutet das @ in ls -l?

121

Ich benutze Mac OSX. Wenn ich tippe ls -lsehe ich sowas

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

Was bedeuten die @?

Larry Wang
quelle

Antworten:

116

Es zeigt an, dass die Datei erweiterte Attribute hat . Mit dem xattrBefehlszeilenprogramm können Sie sie anzeigen und ändern:

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
Michael Mrozek
quelle
9
In 10.8 (Mountain Lion) ist --list nicht gültig. Ich bin's.
Mark E. Haase
4
wenn Sie alle Dateien eines Typs zu finden und die Quarantäne attr in OSX entfernen: find . -iname '*.ext' -print0 | xargs -0 xattr -d com.apple.quarantine. Deshalb habe ich diese Frage gefunden.
Jcollum
2
auch für SEO: @ ist das "at symbol"
jcollum
Hat bei mir nicht funktioniert. Musste xattr -d anstelle von --delete verwenden.
Geoidesic
2
@jcollum noch besser, find . -type f -xattr -print | xargs -0 xattr -d com.apple.quarantine(nicht sicher, ob das -type fnötig ist). Obwohl im Moment aus irgendeinem Grund keiner der beiden Befehle für mich funktioniert ... Dieser hat für mich funktioniert:find . -type f -xattr -exec xattr -d com.apple.quarantine {} \;
Michael
26

Zumindest in Snow Leopard können Sie dies tun, um weitere Informationen anzuzeigen:

ls -l@
Kevin Cantu
quelle
Direkt aus dem xattrHandbuch:Attribute names can also be displayed using ``ls -l@''.
ordonezalex
3

Es hat erweiterte Attribute - Weitere Informationen zu ls finden Sie auf der OSX-Manpage hier .

Frozenskys
quelle
2

Vielleicht möchten Sie sich diesen Beitrag in den Apple-Mailinglisten ansehen . Es wird erklärt, dass das @ anzeigt, dass der Finder andere erweiterte Attribute als ACL hat.

zugaldia
quelle
0

Unter OSX zeigt dies das Vorhandensein von Metadaten an, die der Datei zugeordnet sind.

kbyrd
quelle
Dies bedeutet auch unter Linux keine symbolische Verknüpfung - symbolische Verknüpfungen werden in der ersten Spalte der Berechtigungen durch ein l gekennzeichnet, oder unterbrochene Verknüpfungen durch ein @ am Ende des Pfads und nicht am Ende der Berechtigungszeichenfolge.
BR
Verstanden, bearbeitet.
kbyrd
0

Zusätzlich zu Michael Mrozeks Antwort:

Unter OSX 10.10 (Yosemite) müssen Sie möglicherweise die folgenden attrx-Parameter verwenden:

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