AppleScript SL ถึง ML ฉบับ (ข้อผิดพลาดความเข้ากันได้?)


2

ฉันเขียนสคริปต์ต่อไปนี้ใน Applescript ใน Snow Leopard และฉันพยายามใช้ใน Mountain Lion แต่ไม่มีประโยชน์ (ไม่ได้ผล) สคริปต์จะเฝ้าดูโฟลเดอร์สำหรับไฟล์ที่เพิ่มเข้ามาและหากประเภทไฟล์ตรงกันมันจะทำการสแกนไปยังเซิร์ฟเวอร์

มันทำงานได้ยอดเยี่ยมและไม่มีข้อผิดพลาดใน Snow Leopard เมื่อมันทำงานใน ML มันจะแยกข้อผิดพลาดกลับมา (ในคอนโซล):

AppleScript Runner: CPSGetFrontProcess(): This call is deprecated and should not be called anymore.

ฉันเกือบจะแน่ใจว่าสิ่งนี้เกี่ยวข้องกับวิธีการเขียนสคริปต์ ฉันได้ลองคัดลอกและวางลงในสคริปต์ใหม่ในสิงโตภูเขาแล้วบันทึกสิ่งนั้น ไม่ทำงานเช่นกัน

นี่คือรหัสตัวเองความเข้าใจใด ๆ ว่าสายใดทำงานผิดปกติ

on adding folder items to this_folder after receiving the_files

--set login vars
set fileExt to "zip"
set scpIP to "blah"
set scpUser to "blah"
set scpDest to "/home/blah"
set scpPort to "1234"

--repeat on each file that is added to the folder
repeat with each_file in the_files
    set filename to name of (info for each_file)
    tell application "Finder"
        --check extension, if match, scp. else, error.
        if name extension of each_file is fileExt then
            try
                do shell script "scp -p" & scpPort & " " & scpUser & "@" & scpIP & ":" & scpDes
                move each_file to trash
            end try
        end if
    end tell
end repeat

end adding folder items to

สคริปต์ทำงานบนบรรทัดใดเมื่อมีข้อผิดพลาดเกิดขึ้น?
CajunLuke

ไม่แน่ใจว่ายังไม่ได้ใช้เวลามากใน ML แต่ก็มีการทดสอบเพื่อนสำหรับฉัน เพิ่งได้กล่อง ML ของตัวเองไปทดสอบและโพสต์ผลลัพธ์ที่นี่
เริ่ม

คำตอบ:


1

สิ่งนี้อาจแก้ไขได้ความล้มเหลวที่คุณสามารถโพสต์เนื้อหาของไฟล์ plist จาก ~ / Library / LaunchAgents

on adding folder items to this_folder after receiving the_files

--set login vars
set fileExt to "zip"
set scpIP to "blah"
set scpUser to "blah"
set scpDest to "/home/blah"
set scpPort to "1234"

--repeat on each file that is added to the folder
repeat with each_file in the_files
    set filename to name of (info for each_file)
    --check extension, if match, scp. else, error.
    if name extension of each_file is fileExt then
        try
            do shell script "scp -p" & scpPort & " " & scpUser & "@" & scpIP & ":" & scpDes
            tell application "System Events" to move each_file to trash
        end try
    end if
end repeat
end adding folder items to

ขอบคุณสำหรับความคิดเห็น - ฉันโพสต์จริงในฟอรั่มอื่นและจบลงด้วยสคริปต์ที่แน่นอนนี้ซึ่งทำงานได้ มีปัญหาที่แปลกประหลาด (และมีเอกสารไม่ดีแปลกใจ) ภายใน OSX ที่แยกการโทรที่คิดค่าเสื่อมราคาไม่ว่ารหัสนั้นจะอยู่ที่ใดสำหรับสคริปต์ประเภทนี้ สคริปต์ช้าเกินไปดังนั้นฉันจึงให้ในและฉันกำลังเขียนแอปพลิเคชันแถบเมนูเพื่อทำเช่นเดียวกันมันจะมีประสิทธิภาพมากขึ้น :)
เบา ๆ
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.