ごんれのラボ

iOS、Android、Adobe系ソフトの自動化スクリプトのことを書き連ねています。

Mac OS 10.3.9でAppleScript その2「力技」

Mac OS 10.3.9でAppleScript その2「力技」。

その1で書いていた「ドロップしたフォルダの中のアイテムを数えてファイルに書き出す」AppleScriptがようやく出来た。

ファイルの読み書きやアイテムを数えるのは簡単だったけど、ドロップしたフォルダの名前を取得するのが一苦労。

シンプルにAppleScript's text item delimitersでコロンで区切ってリスト化しようと書いたのが下記。


set texdata to choose folder with prompt "保存先を指定してください"

set texdata to texdata as string

set OriginalDelimiters to AppleScript's text item delimiters

set AppleScript's text item delimiters to {":"}

set texdata to text items of texdata

set c to count texdata

set fname to item (c - 1) of texdata

set AppleScript's text item delimiters to OriginalDelimiters


これをドロップレットで、と試したんだけどうまく動かない…。

試しているうちに面倒になってRubyに処理をお任せすることに。


<AppleScriptでの記述>

set fname to do shell script "ruby /Users/*****/Documents/ruby/フォルダ名取得用.rb" & space & thispath


<Ruby>

# AppleScriptから渡されたフルパスをinsuu1に格納

insuu1 = ARGV[0] ; #--第一引数

# :で分割してリスト化

bunkatsu = insuu1.split(/:/)

# bunkatsuの最後の項目をAppleScriptに渡す

print(bunkatsu[-1])


う~ん、悩まずに実質3行で書き終わってしまった…。

まぁこれで「デスクトップにドロップしたフォルダと同名のフォルダを作る」スクリプトも書けそうだし、強引だけどいいことにしよう。

だからタイトル「力技」。