Saya Tahu ini pada dasarnya dijawab dan automator dengan skrip shell (Sanitize Filenames) berfungsi dengan baik, tetapi saya perlu juga melakukan semua subfolder. Dan jika mungkin pangkas nama file menjadi 50 karakter sambil mempertahankan ekstensi file. Saya telah menemukan sederetan kode bash yang memotong file tetapi juga menghapus ekstensi dan itu tidak berfungsi dengan baik ketika mentransfer file-file ini dari Mac ke Windows.
Script yang berdiri adalah ini
for f in "$1"/*; do
dir=$(dirname "$f")
file=$(basename "$f")
mv "$f" "${dir}/${file//[[:cntrl:]\\\/:*?\"<>|]/_}"
done
Saya tidak menentang menggunakan applescript di automator untuk menyelesaikan tugas ini.