سؤال ماذا يعني @ على إخراج "ls" على محطة OS X '؟


عند القيام ls في دليل أحصل على الإخراج التالي:

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

كنت أتساءل ما @ يعني.


76
2018-06-22 17:57


الأصل


انظر أيضا هنا forthescience.org/blog/2007/12/11/macosx-leopard-extended-ls - Stefano Borini
xattr -r -d com.apple.TextEncoding * من المحتمل أن يزيلها إذا في ملف نصي ، مثل رأس C ++ أو ملف مصدر ، تم إنشاؤه محليًا. إذا قمت بتنزيلها ، ثم xattr -r -d com.apple.quarantine * من المرجح أن يزيلها ، حتى تتمكن من القيام بأشياء مثل تحرير ملف Makefile. لسبب ما ، أبل لا تسمح لك بتحرير Makefile ، ولكن هل تسمح لك لتشغيل Makefile ، مع com.apple.quarantine. إذهب واستنتج... - jww
أنظر أيضا: apple.stackexchange.com/questions/42177/... - hippietrail


الأجوبة:


يشير إلى أن الملف يحتوي على سمات ممتدة. استعمال ls -l@ لرؤيتهم.

يمكنك استخدام xattr لتحرير هذه السمات. xattr -h سوف يعطيك المساعدة المضمنة لذلك.


72
2018-06-22 18:00



شكر. وجدت com.apple.quarantine ، وهنا ما هو وكيفية التعامل معها من أجل الاكتمال: superuser.com/questions/28384/... - xon1c


من قمة رأسي ، أعتقد أن له علاقة بالملف ذي السمات الموسعة المتاحة. هنا رابط لنقاش مماثل:

http://discussions.apple.com/thread.jspa؟messageID=5791060

لذلك إذا رأيت ملفًا بـ "@" عند إجراء ls ، فحاول القيام بذلك:

xattr -l <filename>

يجب أن يظهر لك السمات الموسعة.

يمكنك التحقق من مساعدة xattr لمزيد من التفاصيل:

xattr --help
usage: xattr [-l] file [file ...]
       xattr -p [-l] attr_name file [file ...]
       xattr -w attr_name attr_value file [file ...]
       xattr -d attr_name file [file ...]

The first form lists the names of all xattrs on the given file(s).
The second form (-p) prints the value of the xattr attr_name.
The third form (-w) sets the value of the xattr attr_name to attr_value.
The fourth form (-d) deletes the xattr attr_name.

options:
  -h: print this help
  -l: print long format (attr_name: attr_value)

يبدو أنك إذا نظرت إلى السمات الإضافية مع "-l" ثم أزلتها بـ "-d" ، فمن المحتمل أن تفعل ما تريد. تدرب على ذلك في دليل مؤقت في مكان ما أولاً ، وتأكد من أنه يعمل ؛)


23
2017-08-26 20:05



شكرا جزيلا! يبدو أن الدليل المعني تم وضع علامة عليه على أنه com.apple.quarantine ، وهو عبارة عن تدبير أمان للحماية من البرامج النصية المراوغة والتطبيقات من الشبكة. لا يمكن أن يتسبب ذلك في عدم وجود مشكلة في الدليل. : / أنا سوف ننظر حولها أكثر ونشر الحل إذا وجدت ذلك.


من صفحة ls (1) man على نظام التشغيل Mac OS 10.6.1:

إذا كان الملف أو الدليل يحتوي على سمات ممتدة ، فإن حقل الأذونات المطبوع بواسطة الخيار -l يتبعه حرف "@". وإلا ، إذا قام الملف أو الدليل بتوسيع معلومات الأمان (مثل قائمة التحكم بالوصول) ، فإن حقل الأذونات المطبوع بواسطة الخيار -l يتبعه حرف '+'.

من قائمة الخيارات المتاحة:

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

 -e      Print the Access Control List (ACL) associated with the file, if present, in long (-l) output.

سيسمح لك ذلك بمشاهدة قيمة تلك الخيارات الموسعة. يمكن تعيين FWIW ، معلومات ACL باستخدام نفس الأداة chmod (1) التي ربما تكون على علم بها بالفعل. :-)

لا يبدو أن هناك طريقة سهلة من سطر الأوامر للقيام بأي شيء مع السمات الموسعة.


20
2017-11-06 13:04



يمكن عرض السمات الممتدة ومعالجتها باستخدام الأمر xattr (متوفر فقط في OS X v10.5 و .6). لا يبدو أن لديها صفحة رجل ، ولكن xattr -h سوف يطبع مساعدته الداخلية. - Gordon Davisson
xattr يحتوي الآن على صفحة رجل ، ويمكنك استخدام xattr -l file لسرد جميع السمات أو xattr -p attribute_name file لطباعة سمة محددة. - user495470


من صفحة رجل ليرة سورية:

إذا أعطيت الخيار -l، يتم عرض المعلومات التالية لكل ملف: وضع ملف، وعدد من وصلات، واسم المالك، اسم المجموعة، عدد البايتات في الملف، الشهر مختصرة، يوم من الشهر كان ملف التعديل الأخير، تم تعديل آخر ملف ساعة ، وتعديل الملف الأخير ، واسم المسار.

بالإضافة إلى ذلك ، لكل دليل يتم عرض محتوياته ، يتم عرض إجمالي عدد كتل 512 بايت المستخدمة من قبل الملفات في الدليل على سطر بنفسه ، مباشرة قبل المعلومات الخاصة بالملفات الموجودة في الدليل.

إذا كان الملف أو الدليل يحتوي على سمات ممتدة ، فإن حقل الأذونات المطبوع بواسطة الخيار -l يتبعه حرف "@". وإلا ، إذا قام الملف أو الدليل بتوسيع معلومات الأمان (مثل قائمة التحكم بالوصول) ، فسيكون حقل الأذونات المطبوع بواسطة الخيار -l منخفضًا متبوعًا بعلامة '+'.

استعمال:

ls -la@e

لمزيد من المعلومات حول الملفات أو الدلائل مع تلك السمات / المعلومات.


9
2017-11-06 13:05





ويرتبط ذلك بالسمات الموسعة والتحكم في الوصول.

من صفحة رجل من الشمس ليرة سورية:

الحرف بعد أذونات هو   ACL أو مؤشر السمات الموسعة.   هذه الشخصية @ إذا تم تمديدها   ترتبط السمات مع   الملف و - @ الخيار ساري المفعول.   خلاف ذلك ، هذه الشخصية زائد   علامة (+) شخصية إذا كانت غير تافهة   يرتبط ACL بالملف أو   شخصية الفضاء إن لم يكن.


8
2017-11-06 13:04





يعني "@" أن الملف يحتوي على "سمات ممتدة" مقترنة به.

اذا فعلت "ls -@ -l"، يمكنك معرفة السمات الموجودة لكل ملف. يمكنك أيضًا إجراء شيء مثل"xattr -l pgsql.so"لتفريغ السمات الخاصة بملف معين.

عادة ما تكون عناصر مثل FinderInfo بالمدرسة القديمة ، أو معلومات ترميز النص ، أو معلومات "العزل" التي تمنحك "تم تنزيل هذا الملف من الويب ، فهل تريد بالتأكيد فتحه؟" تحذير.


7
2017-07-14 16:43



السمات الموسعة ليست فريدة من نوعها لمنصة ماك. يدعم عدد من أنظمة التشغيل هذه الميزة على مستوى الملف. - Stefan Kendall
iftrue: في النهاية إنها ميزة نظام الملفات ، رغم ذلك. - Joey


من صفحة رجل من ls:

تنسيق طويل
  […] إذا كان الملف أو الدليل يحتوي على سمات ممتدة ، فإن حقل الأذونات يتم طباعته بواسطة -l الخيار يتبعه "@' حرف. [...]


6
2017-08-26 20:08



لاحظ أن '@' يمكنه أيضًا إخفاء '+' التي عادة ما تكون موجودة للإشارة إلى أن الملف / الدليل له ACL مرتبط به. جرب "ls -le @ O" - التي ستعرض قائمة xattrs و ACL (إن وجدت) وأي علامات أيضًا. - Gordon Davisson