Bırakılan dosyalar arasında dolaşmayı başaramadan Automator ile denedim.
İstediğinizi yapan ve onu bir klasöre nasıl ekleyeceğinizi gösteren bir klasör eylem komut dosyası:
1. AppleScript Editor'ı açın
2. Aşağıdaki betiği yeni bir belgeye yapıştırın
property mail_subject : "An image for you"
property mail_plain_content : "Attached you will the image you required." & return & return & "Best Regards" & return & "Automator"
property mail_html_content : "Attached you will the image you required.<br><br>Best Regards<br>Automator"
on adding folder items to this_folder after receiving these_items
processItems(these_items)
end adding folder items to
on processItems(these_items)
repeat with i from 1 to (count of these_items)
set this_item to item i of these_items
if isFolder(this_item) then
processItems(getFolderItems(this_item))
else
processFile(this_item)
end if
end repeat
end processItems
on processFile(this_file)
set mail_address to RemoveExtension(getFileName(this_file))
tell application "Microsoft Outlook"
set newMessage to make new outgoing message with properties {subject:mail_subject, plain text content:mail_plain_content, content:mail_html_content}
tell newMessage
make new recipient with properties {email address:{address:mail_address}}
make new attachment with properties {file:this_file as alias}
send
end tell
activate
end tell
end processFile
on isFolder(this_item)
tell application "System Events" to return (exists folder (this_item as string))
end isFolder
on RemoveExtension(this_name)
-- This function comes from :
-- http://www.macosxautomation.com/applescript/sbrt/index.html
if this_name contains "." then
set this_name to (the reverse of every character of this_name) as string
set dot_offset to the offset of "." in this_name
set this_name to (text (dot_offset + 1) thru -1 of this_name)
set this_name to (the reverse of every character of this_name) as string
end if
return this_name
end RemoveExtension
on getExtension(this_name)
if this_name contains "." then
set this_name to (the reverse of every character of this_name) as string
set dot_offset to the offset of "." in this_name
set this_name to (text 1 thru (dot_offset - 1) of this_name)
set this_name to (the reverse of every character of this_name) as string
return this_name
else
return ""
end if
end getExtension
on getFileName(this_file)
tell application "Finder" to return name of this_file
end getFileName
on getFolderItems(this_folder)
tell application "Finder" to return items of this_folder
end getFolderItems
3. ~ / Library / Scripts / Folder dizinine kaydedin Action Script Klasörüne
Menü Dosyası > Kaydet
Basma: Sağ klasöre gidin cmd+ Gve yapıştırma:
~ / Library / Scripts / Klasör Eylem Komut
ve tıklayın Git
Farklı kaydet: Görüntü - address.scpt olarak adını kullanarak e-posta (örneğin)
Formatı: Senaryo
4. Eklenen öğeler için izlenecek yeni bir klasör oluşturun
5. Komut dosyasını klasörle ilişkilendirin
Finder, hemen sonra da klasöre tıklayıp seçin Hizmetler > Klasör İşlemleri Kur
yeni oluşturulan seçin address.scpt olarak adını kullanarak e-posta - Image komut
İşin bitti, adı bir adres olan bir dosyayı bırak, posta gönderilecek.