2015-11-27 94 views
0

我試圖找出創建能夠定期爲應用程序做一些維修用的文件夾中運行一個AppleScript最簡單的方法。的AppleScript根據其名字的文件夾移動到網絡文件夾

例如: 有桌面上的2個文件夾。一個被命名爲「George Project」,另一個被命名爲「Rocco項目」。

我需要將任何文件夾及其各自的包含George的子文件夾移動到網絡驅動器上的george文件夾(/ Volumes/AMT/George),以及包含Rocco等任何文件夾的相同內容。

所有這些命名的文件夾中僅會在2個位置,所以我想這個腳本來檢查包含這些名稱的任何文件夾兩個位置,並將其移動到網絡上的正確位置。

到目前爲止,我已經盡我的本地驅動器上運行此腳本,但它實際上並沒有移動任何東西:在移動指令

global theWatchedFolder 
set theWatchedFolder to choose folder 
on idle 
    tell application "Finder" 
     set theDetectedItems to every item of theWatchedFolder whose name contains "rocco" 
     repeat with aDetectedItem in theDetectedItems 
      move aDetectedItem to "/Users/Rocco/Test" 
     end repeat 
    end tell 
    return 1 
end idle 

回答

0

1)您必須使用搜索路徑(網友:羅科:測試:)而不是Unix路徑(/ Users/Rocco/Test)。另外,目標文件夾應該是一個別名,而不是字符串

move aDetectedItem to ("Users:Rocco:Test:" as alias) 

2)返回1將迫使你的腳本運行後僅1秒。當然太快了。可能已經每30秒鐘就足以不殺你的系統。

3)當源和目標是在不同的體積(它似乎是的情況),移動命令不「移動」,但但執行復制。您的文件將保留在源文件夾中,然後您的腳本將永遠將它們複製到目標文件夾。成功移動後,您應該刪除它們。

4)而不是使用「空閒」的處理程序,爲什麼你不使用你的2個桌面文件夾中的文件夾的動作腳本?隨着「關於添加項目」處理程序,該腳本將每次的文件夾(喬治項目一個腳本和羅科項目幾乎相同)中添加項(文件或文件夾)的時間運行。這個腳本應該查找添加的所有文件/文件夾,移動它們並最終刪除它們。因爲只有添加的項目使用此處理程序進行處理,所以不必強制刪除已處理的項目。

相關問題