1

このアップルスクリプトは機能します

set myFile to (POSIX path "/Users/fred/Documents/data.dat")

このAppleScriptは機能しません

set myFileName to "/Users/fred/Documents/data.dat"
set myFile to (POSIX path myFileName)

エラーで失敗します

    get POSIX file "/Users/fred/Documents/data.dat"
    --> error number -1728
Result:
error "iTunes got an error: Can’t get POSIX file \"/Users/fred/Documents/data.dat\"." number -1728 from file "Macintosh HD:Users:drew:Desktop:Music:DIY:DIY-01.mp3"

変数を使用する場合、POSIXパスはファイル名に明示的な文字として二重引用符を含めているように見えます。私は何が間違っているのですか?

以下のスクリプトは問題を再現します。

tell application "Finder"
    set newFileName to "/Users"
    set newFile to POSIX file newFileName
end tell

ありがとう

4

2 に答える 2

6

OK - 何をすべきかわかりました。

以下のスクリプトは機能します - 変数を渡すのではなく、変数を強制する必要があるだけですPOSIX file

tell application "Finder"
    set newFileName to "/Users"
    set newFile to (newFileName as POSIX file)
end tell

結果...

file "Macintosh HD:Users"

ご協力ありがとうございます。

アンドリュー

于 2013-03-08T17:27:24.930 に答える
1

「/Users/fred/Documents/data.dat」はすでにposixパスです

tell application "Finder" to open POSIX file "/Users/fred/Documents/data.dat"

また

tell application "System Events" to open "/Users/fred/Documents/data.dat"

iTunesの例を次に示します。

tell application "Finder" to set myFile to (POSIX file "/Users/John/Desktop/08 5150.mp3")
tell application "iTunes" to set resultTrack to add myFile to playlist "test"
于 2013-03-08T16:34:41.737 に答える