Apakah mungkin untuk menandai file atau folder di maverick melalui perintah terminal?
terminal
mavericks
finder-tag
macos
GedankenNebel
sumber
sumber
Jawaban:
Anda bisa menggunakan xattr. Ini menyalin tag dari file1 ke file2:
xattr -wx com.apple.metadata:_kMDItemUserTags "$(xattr -px com.apple.metadata:_kMDItemUserTags file1)" file2;xattr -wx com.apple.FinderInfo "$(xattr -px com.apple.FinderInfo file1)" file2
Tag disimpan dalam daftar properti sebagai satu larik string:
Jika bendera kColor di com.apple.FinderInfo tidak disetel, Finder tidak menampilkan lingkaran untuk warna. Jika bendera kColor diatur ke oranye dan file memiliki tag merah, Finder menunjukkan lingkaran merah dan oranye. Anda dapat mengatur bendera kColor dengan AppleScript:
xattr -w com.apple.metadata:_kMDItemUserTags '("Red\n6","new tag")' ~/desktop/file4;osascript -e 'on run {a}' -e 'tell app "Finder" to set label index of (POSIX file a as alias) to item 1 of {2, 1, 3, 6, 4, 5, 7}' -e end ~/desktop/file4
xattr -p com.apple.FinderInfo file|head -n1|cut -c28-29
mencetak nilai bit yang digunakan untuk bendera kColor. Merah adalah C, oranye adalah E, kuning adalah A, hijau adalah 4, biru adalah 8, magenta adalah 6, dan abu-abu adalah 2. Bendera yang akan menambahkan 1 ke nilai tidak digunakan dalam OS X.Sunting: Anda juga dapat menggunakan tag :
tag dapat diinstal dengan
brew install tag
atausudo port install tag
.sumber
Dimungkinkan untuk memanipulasi tag melalui perintah bash murni. Tidak perlu util "tag" pihak ke-3.
Perintah ini mencantumkan semua tag file ($ src):
Dan di sini adalah bagaimana Anda dapat menambahkan tag ($ newtag) ke file ($ src):
Berikut ini adalah skrip shell kecil yang mengekspor fungsi "tag". Pemakaian:
Fungsi ini dapat dengan mudah diperluas untuk mendukung penghapusan juga.
sumber
xattr -wx
Perintah Anda gagal saat file belum memiliki tag di dalamnya. Bagaimana saya bisa menghindari ini?xattr -px …
perintah yang Anda berikan untuk menampilkan tag pada salah satu folder saya memberikan output berikut:"language:Objective-C\n2"
(baris baru)"platform:iOS\n4"
. Sejujurnya, jika Anda akan membungkus kode shell Anda yang cukup kompleks menjadi fungsi bash, Anda semacam hanya menduplikasi upaya tag , yang memiliki keuntungan dipelihara dengan baik oleh komunitas.