🐙

Mac/ターミナル上でファイルやディレクトリのタグを削除する

2021/07/04に公開

シェルスクリプトとAutomatorを使って、対象とするフォルダをまとめてコピーするようにしているのだが、コピーする対象フォルダにタグが設定してあると、Finderの該当タグのところにコピーされたものが全て表示されてしまう。どれが元データなのかわからなくなってしまい、うっとうしいことこの上無い。

で、コピーしたフォルダのタグを削除するにはどうしたらいいか調べてみたところ、xattrを使うといいことがわかった。(ここを参考にした。Thanks!

まず、'com.apple.FinderInfo'の10番目の数値を00hにすると、タグの色設定が削除され、

xattr -wx com.apple.FinderInfo "00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" [filepath]

'com.apple.FinderInfo'を丸ごと削除してしまってもいいのだが、コピーする対象フォルダに貼ってあるアイコンも一緒に消えてしまう。なので、このようにしている。9番目の04hがアイコンを有効にする設定なのだと思う(てきとう)。

それから、'com.apple.metadata:_kMDItemUserTags'を削除すると、タグの名称が削除される。

xattr -d com.apple.metadata:_kMDItemUserTags [filepath]

これでOK。

Discussion