Як прикріпити файл до Outlook з терміналу за допомогою Applescript?


0

Я пишу Applescript, щоб можна було додати файл до Outlook з терміналу таким чином:

$ attachToOutlook myreport.xlsx

Де attachToOutlook псевдонім osascript /path/to/my/script/attach

Це моя поточна реалізація:

on run argv
  tell application "Microsoft Outlook"
    set theContent to ""
    set theAttachment to item 1 of argv
    set theMessage to make new outgoing message with properties {subject: ""}
    tell content
      make new attachment with properties {file: (item 1 of argv )} at the end of theMessage
    end tell
    open theMessage -- for further editing
  end tell
end run

але я отримую таку помилку:

attach:263:264: script error: Expected expression, etc. but found “:”. (-2741)

Як це можна виправити?

Відповіді:


1

Пара питань. По-перше, потрібно зробити нове додаток до повідомлення, а не до його змісту. По-друге, вкладення має бути файлом posix. По-третє, ви не можете просто надіслати ім'я файлу, ви повинні повідомити Outlook, де файл, включивши повний шлях.

Я написав свою власну версію, включену тут, додавши тему та вміст як змінні, передані через командний рядок.

Примітка: Зателефонуйте наступним чином, замінивши фактичне ім'я облікового запису.

osascript testterm.scpt '/Users/<user name>/Desktop/test2.rtf' 'Test Subject' '<p>This is a test content for an email test</p>'

Код AppleScript в testterm.scpt:

on run argv
    set theAttachment to item 1 of argv
    set theAttachment to theAttachment as POSIX file--convert to posix file
    set theSubject to item 2 of argv
    set theContent to item 3 of argv
    tell application "Microsoft Outlook"
        set theMessage to make new outgoing message with properties {subject:theSubject, content:theContent}
        tell theMessage--tell theMessage (not theContent) to add the attachment
            make new attachment with properties {file:theAttachment}
        end tell
    open theMessage
    end tell
end run
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.