November 2, 2010

AppleScript小試

最近工作上需要用到一點小工具。網路上找到的工具是一支jar,一般情況下要使用的時候要打開終端機,輸入像底下這樣的程式碼。#java -jar xxx.jar [source file]當然這樣一行一行指令,一個一個檔案轉換也是沒什麼問題,不過最近一時興起想玩玩apple script,於是就拿這來牛刀小試一番。

其實我跟本一點apple script都不懂,不過想要用什麼功能只要google一下,很容易可以找到需要的指令。

最後做成一個app,執行之後會有一個選擇檔案的視窗,可以多選檔案,然後選擇目標路徑資料夾,最後對多個檔案執行操作之後輸出到目標路徑中。

整個不難阿。大概花不到一天的時間就兜出一個還不錯像樣的軟體出來了。像這樣的東西如果用其他語言寫不曉得要寫多少行的程式碼拉多少library進來,但用apple script只有這短短十行code就做到了。

具體程式碼如下。tell application "Finder"
set workingDir to POSIX path of (get folder of (path to me) as Unicode text)
set aSourceFiles to choose file with prompt "Select Source files:" of type ("xml") with multiple selections allowed
set aTargetFolder to POSIX path of (choose folder)
repeat with aFile in aSourceFiles
set aTarget to name of aFile
set aFile to POSIX path of aFile
do shell script "java -jar " & workingDir & "/xxx.jar " & aFile & ">" & aTargetFolder & "/" & aTarget
end repeat
end tell

compile/debug完成之後,儲存為應用程式即可。
以上這段程式碼會執行跟app同一個資料夾下的xxx.jar檔,以所選擇的xml檔案作為輸入,輸出至所選擇的目標路徑中。很簡單吧。

P.S 應該很容易看出來,底層還是一樣是跑java -jar的command啦,所以說就只是小試一下咩。

0 Comments: