सिस्टम पर हाल ही में परिवर्तन फ़ाइलों के लिए पथ को हथियाने के लिए एक स्क्रिप्ट का उपयोग करें?


0

महीनों पहले मैंने पूछा कि क्या हाल के फाइंडर विंडो / स्थानों तक पहुंचने के लिए कोई कार्यक्रम या कोई तरीका है?

उस सवाल को पूछने के बाद, मैंने सिस्टम में सभी हाल ही में परिवर्तित फ़ाइलों को देखने के लिए फ्रेश नामक एक उपयोगिता का उपयोग करना शुरू किया और उन्हें पॉपअप मेनू में एक्सेस किया:

यहाँ छवि विवरण दर्ज करें

मुझे यह पसंद है, लेकिन सिस्टम पर हाल ही में परिवर्तन फ़ाइलों के लिए पथ को हथियाने के लिए एक स्क्रिप्ट का उपयोग करने का कोई तरीका भी पसंद आएगा। मैं फ़ाइलों की निगरानी कैसे कर सकता हूं और उन लोगों की सूची प्राप्त कर सकता हूं जो हाल ही में बदल गए हैं?

जवाबों:


1

मैं नहीं जानता कि हाल ही में संशोधित फ़ाइलों को कैसे देखा जाए, लेकिन हाल ही में खोली गई फाइलें com.apple.recentitems.plist में एक हेक्स प्रारूप में संग्रहीत हैं। इस MacScripter थ्रेड में फ़ाइलों के पथ प्राप्त करने के लिए एक हैंडलर होता है, लेकिन इसने 10.8 में काम करना बंद कर दिया।

on datatoposix(x)
    set f to (open for access POSIX file ("/tmp/datatoposix.dat") with write permission)
    try
         repeat with d in x
              set eof f to 0
              -- Write the data object to the file.
              write d's contents to f
              -- Reset the file mark to byte 21.
              read f from 21 for 0
              set POSIXpath to ""
              repeat
                    -- Read the next 8 bytes as a string and get the characters' IDs.
                    set idList to id of (read f for 8 as string)
                    -- Finish when IDs 2 to 8 aren't the values for "path item".
                    if (idList does not end with {0, 0, 0, 1, 1, 0, 0}) then exit repeat
                    -- Get the byte length of the item's name from the first ID.
                    set len to beginning of idList
                    -- Read that number of bytes as UTF-8 and append the result to the POSIX path.
                    set POSIXpath to POSIXpath & ("/" & (read f for len as «class utf8»))
                    -- Advance the file mark past any padding.
                    read f for (4 - len mod 4) mod 4
              end repeat
              set d's contents to POSIXpath
         end repeat
    on error msg
         display dialog msg
    end try
    close access f
    x
end datatoposix

tell application "System Events"
    tell property list file "~/Library/Preferences/com.apple.recentitems.plist"
        set l to property list item "RecentDocuments"'s property list item ¬
        "CustomListItems"'s property list items's property list item "Bookmark"'s value
    end tell
end tell

datatoposix(l)

एकदम कमाल का। आप applescript पर कमाल हैं।
cwd

हे @ लिरी - क्या सभी उपकरण (स्क्रिप्ट संपादक और डिबगर्स) आप अपने सभी एप्सस्क्रिप्ट करते समय उपयोग करते हैं? मेरे पास वेब देव के लिए एक अच्छा टूलबॉक्स है, लेकिन एप्सस्क्रिप्ट विकास नहीं।
cwd
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.