[Sy] Macのパーミッションにある@(アットマーク)の正体と消す方法
2015/06/25
Mac上で、ダウンロードしたファイルをターミナルからls -al
コマンド等で確認すると、パーミッションのところに@が付いてます。
これをそのままにした状態だと、うまく動かない場合があったりするので消したい!と思うことが多々ありますが、すぐ忘れちゃうのでメモ。
まずは、問題の@がどんな感じで確認できるかというと、
$ ls -al
total 6404
drwx------+ 16 utano320 staff 544 6 25 19:59 .
drwxr-xr-x+ 78 utano320 staff 2652 6 25 20:00 ..
-rw-r-----@ 1 utano320 staff 3208 6 25 19:59 download.gif
みたいな感じ。
そもそもこいつは、Extended Attributes
というものらしい。拡張属性ってことですね。
いくつか種類があるみたいですが、ls -l@
とするとそのファイルに付いてる属性が確認できるとのこと。例えば先のどのファイルの場合、
$ ls -l@ download.gif
-rw-r-----@ 1 utano320 staff 3208 6 25 19:59 download.gif
com.apple.metadata:kMDItemWhereFroms 170
com.apple.quarantine 68
と表示されました。2つ付いてますね。
Extended Attributesを削除する方法
こいつの削除の方法ですが、以下のようにxattr -d [削除したい属性] [ファイル名]
とすると消えます。
$ xattr -d com.apple.metadata:kMDItemWhereFroms download.gif
$ xattr -d com.apple.quarantine download.gif
確認。
$ ls -l@ download.gif
-rw-r----- 1 utano320 staff 3208 6 25 19:59 download.gif
消えました!