Perintah ls: Apa arti dari mode file @ in, dan bagaimana cara menghilangkannya? [duplikat]

25

Pertanyaan ini sudah ada jawabannya di sini:

Setelah saya mengunduh file di OSX dan kemudian ingin menggunakannya, mereka sering memiliki @ ditambahkan pada mode file setiap kali saya melakukan ls -l. Ini adalah contoh keluaran, lihat @ di dekat awal baris:

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

Saya pikir ini semacam mekanisme penguncian, benarkah itu? Dan bagaimana cara saya menyingkirkannya?

Björn
sumber

Jawaban:

36

Dari ls manual ( man ls ) bagian Format Panjang

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

Anda kemudian dapat menampilkan atribut yang diperluas dengan -@

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

Untuk memanipulasi atribut diperluas, Anda dapat menggunakan xattr perintah. Lihat misalnya Bagaimana cara menghapus atribut yang diperluas di Mac OS X atau Menghadapi Atribut yang Diperpanjang pada OS X

Matteo
sumber
Terima kasih, jawaban yang sangat lengkap! Saya baru saja akan bertanya cara menghapus atribut apa pun, tetapi saya melihat Anda baru saja memperbarui posting Anda :)
Björn
Saya baru menyadari kemudian bahwa ada bagian kedua dalam pertanyaan :-)
Matteo