2008-12-23 14 views
5

मैं एक छोटी सेबस्क्रिप्ट लिख रहा हूं जो दर्शक में सभी "अपठित" संदेशों को पुनर्प्राप्त करता है और उन्हें लूप करता है। मैं एक संदेश के विषय हो और अगर यह चरण 2 के लिए उपयुक्त है देखने के लिए एक नियमित अभिव्यक्ति करने की आवश्यकतासेबस्क्रिप्ट का उपयोग कर ईमेल संदेश कैसे खोलें?

  1. (पूर्व:

    मैं पूरा करने के लिए दो गोल की है। विषय {संबंध में ईमेल पाने * })

  2. मैं एक अलग विंडो पर प्रत्येक संदेश को खोलने के लिए और 4 सेकंड के बाद, मुझे लगता है कि विंडो बंद करें और अगले संदेश के साथ आगे बढ़ना करने की आवश्यकता की जरूरत है

क्या तुम जानते हो इन्हें कैसे करें?

अग्रिम धन्यवाद।

उत्तर

2

निम्नलिखित एप्सस्क्रिप्ट मेरे लिए काम करता है, लेकिन मुझे यकीन नहीं है कि रेगेक्स मिलान कैसे करें। आप यूनिक्स 'grep' फ़ंक्शन का उपयोग एप्सस्क्रिप्ट के 'do shell script' कमांड के साथ कर सकते हैं, लेकिन मैं grep का सही तरीके से उपयोग करने में कोई विशेषज्ञ नहीं हूं। मैं इसे उत्तर देने के लिए किसी और के लिए छोड़ दूंगा।


on run 
    tell application "Mail" 
     set myInbox to mailbox "INBOX" of account 1 
     set myMessages to every message of myInbox 

     repeat with theMessage in myMessages 
      if read status of theMessage is false then 

       if my subjectIsInteresting(subject of theMessage) then 
        open theMessage 
        delay 4 
        close window 1 
       end if 

      end if 
     end repeat 

    end tell 
end run 

on subjectIsInteresting(subject) 

    -- do some regex magic here 

    return true -- for now 

end subjectIsInteresting 
1

regexes के लिए - आप अपने खुद के मशीन पर स्क्रिप्ट चला रहे हैं, या वितरित यह बंडल कर सकते हैं, तो आप Satimage स्माइल विस्तार (http://www.satimage.fr/software/en/downloads/index.html) जो Apple स्क्रिप्ट के लिए regexes कहते हैं इस्तेमाल कर सकते हैं।

1

मुझे पता है कि आपके पास पहले से ही आपका जवाब है लेकिन क्या आपने ऑटोमेटर में देखा है? इस तरह की अधिकांश मानक स्क्रिप्ट के लिए, यदि आप AppleScript से परिचित नहीं हैं तो यह कम दर्दनाक हो सकता है। यह बहुत 'प्रोग्राममी' नहीं है लेकिन यह तेज़ है और आप कम समय डिबगिंग खर्च करेंगे।

संबंधित मुद्दे