Saya dapat ini bekerja pada Sierra 10.12.3 di Automator.
Pertama, saya membuat versi skrip ini: Fungsinya sama dengan fungsi freefly42, hanya cara penulisan yang sama.
Untuk menerjemahkan untuk bash speaker non-asli, yang dilakukannya adalah:
Jika dijalankan dengan argumen commandline, ia mencoba untuk melihat apakah argumen tersebut adalah direktori, dan jika direktori tersebut berisi file bernama ".disable_osx_metadata".
Jika file khusus tidak ada di sana, maka tidak ada yang terjadi. Drive itu diabaikan.
Jika ada file khusus, skrip menghapus semua metadata osx dan membuat beberapa item baru kecil yang mencegah hal lain. Misalnya, membuat file bernama. Trash mencegah OS dari membuat direktori bernama. Trash dan kemudian menulis file di sana.
Jika dijalankan tanpa argumen, itu berjalan sendiri sekali untuk setiap direktori di / Volume.
Jadi, jika Anda menjalankannya secara manual atau mengkliknya, ia memeriksa semua drive yang terpasang. Jika Anda membuat alur kerja di Automator, maka Automator menjalankannya setiap kali drive terpasang, hanya untuk drive itu.
#!/bin/bash
x=.disable_osx_metadata
[[ "$1" ]] || exec find /Volumes -type d -maxdepth 1 -mindepth 1 -exec $0 {} \;
[[ -e "$1/$x" ]] || exit 0
mdutil -i off "$1"
rm -rf "$1"/.{,_.}{fseventsd,Spotlight-V*,Trashes}
mkdir "$1/.fseventsd"
touch "$1/.fseventsd/no_log" "$1/.Trashes" "$1/$x"
Simpan sebagai "disable_osx_metadata", chmod 755, salin ke / usr / local / bin.
$ cd Documents/disable_osx_metadata/
$ chmod 755 disable_osx_metadata
$ sudo cp disable_osx_metadata /usr/local/bin
Kemudian buka Automator, New, Folder Action
Kemudian saya menemukan bahwa bahkan di Sierra 10.12.3 Anda masih BISA menambahkan direktori / Volume di Automator, dengan cara yang tidak jelas.
Pergi ke Finder, File, "Go To Folder ...", tulis secara manual di "/ Volume" dan tekan Enter.
Sekarang ini menunjukkan kepada Anda jendela dengan drive HD dan usb Anda, tetapi tidak ada folder "/ Volume" yang jelas untuk diklik. Tapi bilah judul mengatakan "/ Volume", dan itu muncul di bagian bawah juga.
Anda dapat menyeret ikon folder di sebelah "/ Volume", baik dari bilah judul atau dari bawah, ke Automator, dan letakkan di "Action folder menerima file dan folder yang ditambahkan ke: [______]"
Tutup Finder.
Kembali di Automator: di sebelah kiri, gulir ke bawah dan seret "Dapatkan Konten Folder" ke kanan dan letakkan.
Kemudian di sebelah kiri lagi, gulir ke bawah dan seret "Jalankan Script Shell" ke kanan dan letakkan di bawah "Dapatkan Konten Folder".
Ubah "Lulus masukan:" menjadi "sebagai argumen". Shell: [/ bin / bash] Lulus masukan: [sebagai argumen]
Kemudian seret skrip dari / usr / local / bin ke kotak di bawah "Run Shell Script" sehingga dikatakan "/ usr / local / bin / disable_osx_metadata"
File, simpan, disable_osx_metadata.workflow
Untuk referensi, ini disimpan di:
/ Users / YOUR_NAME / Library / Workflow / Aplikasi / Tindakan Folder
Jika Anda menyimpan sesuatu yang salah, saya pikir Anda harus menavigasi secara manual di Finder untuk menghapusnya.
Terakhir, untuk setiap drive usb baru yang ingin Anda lindungi, Anda harus membuat file bernama ".disable_osx_metadata" di folder root.
Anda dapat melakukannya di Terminal: $ touch / Volume / NO \ NAME / .disable_osx_metadata
Atau simpan saja file teks kecil dengan nama yang terlihat (tanpa titik awal) dan salin ke root dari setiap drive usb baru dan ganti namanya .disable_osx_metadata setelah menyalin.
Drive itu sekarang akan dibersihkan setiap kali Anda memasangnya mulai sekarang.
Tidak sebersih yang saya inginkan. Anda harus sedikit mencemari drive, untuk memberi tahu OS agar tidak mencemari lebih banyak. Sepertinya tidak ada cara untuk membuat OS biarkan saja dan tidak menambahkan file yang tidak Anda minta.
TODO: Tambahkan fungsi aktifkan / nonaktifkan untuk membuat / menghapus file-dot.
TODO: Ini tidak mencegah file .DS_Store di setiap direktori.
TODO: Apakah mungkin untuk mengemas skrip dan file foo.workflow sehingga pengguna dapat melewatkan sebagian besar arahan manual ini? Saya melihat ada opsi "ekspor" di Automator yang membuat semacam file paket.
TODO: Kemungkinan usang seluruh pos ini. Alur kerja applescript + automator ini mungkin lebih baik:
https://superuser.com/questions/319553/does-anyone-have-a-mac-terminal-script-to-remove-hidden-files/814104#814104