• ベストアンサー

Automatorの中の「AppleScriptを実行」について質問で

Automatorの中の「AppleScriptを実行」について質問です。 添付した画像のように、画像ファイルのタイプを変更し、そのファイルを開く、というワークフローを作りたいと思っています。 タイプ変更したあと、そのファイルを変数に格納してAppleScriptに渡したいと思っているのですが、うまくいきません。 Automatorで設定した変数を、AppleScriptに渡すにはどうすれば良いのでしょうか。 よろしくお願いします。

  • Mac
  • 回答数1
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • capy2009
  • ベストアンサー率72% (337/465)
回答No.1

input, paramaters が AppleScript が受け取ったパラメーターですから、open file_path ではなく open input にしなければなりません。

hk-sulo
質問者

お礼

すみません。 すっかりお礼が遅れてしまいました。。 ご指摘の通り試してみたところ、うまくいきました。 ありがとうございました!

関連するQ&A

  • Automatorでメールを自動送信

    メールでファイルの配付をしたいのですが、送信先により配付するファイルが異なります。 送信先アドレスと添付するファイル名のリストはエクセルに保存されています。リストを順に読込んで自動的に添付ファイルを送信したいのですがどのようにするのでしょうか。 一応Automatorを使って作ろうと思ったのですが、いきなりファイルを1行読込む方法が解りません。ループも分かりません。(1行読込むとかループとかという概念はないような???) すみませんが、Automatorで上記のワークフローの作り方を教えていただけないでしょうか? (Automatorでは難しいのなら他の方法を教えて下さい)

    • 締切済み
    • Mac
  • chmodをapplescriptで実行したい。

    はじめまして AppleScript初心者です。 OSXServer10.4.8でファイル共有しています。 フォルダのアクセス権を定期的にchownコマンドで変更したいと思いますが、うまくいきません。 Applescriptでchmodコマンドを実行するものを用意しましたが、スクリプトエディタでスクリプトファイルを実行するとchmodでアクセス権が変更されるのですが、このスクリプトをcrontabに登録して特定の時間に実行するように設定すると機能しません。 AppleScript//////////////////// set cmdchown to "/usr/sbin/chown -R test /test1" do shell script cmdchown password "password" with administrator privileges set cmdchmod to "/bin/chmod -R 755 /test1" do shell script cmdchmod password "password" with administrator privileges ////////////////////////// 定期的にオーナーとアクセス権を変更するにはどうすれば良いですか? よろしくお願いします。

  • Automatorでファイルの移動とコピー

    Automatorのフォルダアクションを使ってファイルを2ヶ所のフォルダにコピーしたいのですが、うまくいきません。 フォルダAに保存されたPDFをフォルダBの日付フォルダ(フォルダ名:yy-mm-dd)に移動して、次にフォルダCにコピーをすることが目的です。 ネットの情報を参考にしながら下記のようなワークフローを作成しました。 AutomatorのフォルダアクションでフォルダAを指定 1. 指定されたFinder項目を取得(Automatorでのテスト用に設定) 2. フォルダの内容を取得 3. 変数の値を取得   変数名:folderA 4. AppleScriptを実行  on run {input, parameters}   set folderA to item 1 of input    -- POSIX変換   set folderA_POSIX to POSIX path of folderA   -- 移動先   set folderB to "フォルダBのパス"    -- フォルダBの中の日付名のサブフォルダ   set theTime to do shell script "date +'%y-%m-%d'"    -- フォルダB / yymmdd のパス   set yymmdd to do shell script "find " & folderB & " -name " & theTime & "* -print"   set moveCommand to "mv " & quoted form of folderA_POSIX & " " & quoted form of yymmdd   do shell script moveCommand   return input end run Finder項目をコピー      フォルダCを指定 一応、上記の流れで動いているのですが、このワークフローと同じ内容で別のフォルダ用にコピーをしたところ、「AppleScriptを実行」の結果に移動先のフォルダBのyy-mm-ddフォルダに保存されたファイルのパスが表示されず、最初のフォルダAのパスが入っていて、テストの結果のログの部分には、「アクション”Finder項目をコピー”に必要なデータがありません」とありました。 ワークフローをコピーする前のちゃんと結果を得られている方のフォルダでは、移動先のパスが結果に表示されていたので、最後の return input の値が更新されていないのかな?と想像しているのですが、どうしたら良いですか? 「Finder項目をコピー」にデータを引き渡すことができない原因はなんでしょうか? 同じスクリプトで問題なく動いているフォルダもあるのですが、違いは何でしょうか? アクセス権はいずれも同じ設定(読み書きOK)になっています。 そもそも上記のようなスクリプトで問題ないでしょうか? Macもまだ慣れず、AutomatorもAppleScriptも知識がないのでとんちんかんな質問でしたら申し訳ありませんが、ご指導よろしくお願い致します。

    • ベストアンサー
    • Mac
  • Automatorが失敗する原因

    お世話になります。 Mac購入からまだ日が浅く、Automatorの勉強も始めたばかりですが、下記の処理をAutomatorのカレンダーアラームに登録をして、問題なく処理を完了する場合と、途中で失敗する場合があります。 Macそのものの環境は同じだと思いますので、スクリプトの書き方などに問題があるのではないかと思っています。 処理の順番は、以下の通りです。 1.「シェルスクリプトを実行」 ファイル名が日付で毎日変動するファイルを検索 2.「Finder項目をコピー」 特定のフォルダにコピーをして 3.「変数の値を設定」 ファイルのパスを扱うために設定 4.「AppleScriptを実行」       a. ファイルのパスからファイル名を抽出      b. FileMakerの特定のフィールドにその値をセット      c. ファイルの解凍 今はエラーを再現できないのですが、本日2回ほど失敗した時は1~3までの工程は問題なかったようで、ファイルのコピーまではできていました。 エラーの内容はうろ覚えですが、「スクリプトを確認して下さい」のような文言だったと思います。 4.の「AppleScriptを実行」のa.に関してはダイアログなどを出していないのでできているのか不明ですが、b.の部分はできていなかったので、恐らく、b.のところで止まってしまったように思います。 事前にFileMakerのウインドウが前面に来るようにはしてあるのですが・・・。 漠然とした相談で申し訳ありませんが、何かご存知でしたら教えて下さい。 宜しくお願い致します。

    • ベストアンサー
    • Mac
  • MacのAutomatorについて質問です。その2

    MacのAutomatorについて質問です。の続きです。 回答を間違えて閉め切ってしまったので、また書きます。 あとMacのAutomatorについて質問です。の回答5に対するお礼の、「メールが・・・」の所は気にしないで下さい。 では一応また書きます。 jpgが.JPGになっていた場合、読み込んでくれません。 これはリネームソフトを使うので、たいした事ではないのですが。 「夏休み」 「夏休み (2012)」 という二つのフォルダがあった場合、一つ目のワークフローでテキストにするときに 「夏休み (2012)」の方が一番下になってしまいます。 (「夏休み (2012)」フォルダは、名前順にしても一番下ではありません) これはなんでなのでしょうか?本当に図々しくてすいません!!

    • ベストアンサー
    • Mac
  • MacのAutomatorで、高画質な画像をまとめてダウンロードしたい

    MacのAutomatorで、高画質な画像をまとめてダウンロードしたいのですが、うまくワークフローが機能しなくて困っています。例えばgoogle画像検索やflickerで出てきた、サムネイル一覧画面からリンク先の高画質画像を一括してダウンロードしたいのですが、以下のワークフローをどのように修正すればいいでしょうか?  safariで現在開いているページを取得→webページからイメージのURLを取得(これらのwebページからリンクされているイメージ)→URLをダウンロード このワークフローを実行すると、URLをダウンロードするのに必要なデータがありません、との警告が出ます。ちなみにその直前のURLを取得の部分の「結果」欄を見てみますと結果が生成されませんでした、と表示されます。つまり画像のURLの取得に失敗しているみたいです。どうすれば成功するでしょうか?正常に機能するワークフローを実際にくんでいる方、アドバイスをいただけるとありがたいです。  または、Automatorではなくても、そのようなダウンロー支援ソフトがあれば紹介してもらえると助かります。ご回答をよろしくお願いします。

    • ベストアンサー
    • Mac
  • MacのAutomatorについて質問です。

    Mac OS 10.6.8を使用しています。 Automatorの使い方がいまいちわからないので、質問致します。          フォルダX   |    |      |    | フォルダ1 フォルダ2 フォルダ3 フォルダ4   |     |     |    | 001.jpg  000.jpg  夏001.jpg  01.jpg 002.jpg  001.jpg  夏002.jpg  02.jpg   :     :     :    : 上のように「フォルダX」の中に画像が入ったフォルダ(名前順に並べてある)が複数あるとします。 この4つのフォルダのそれぞれの1ページ目の画像だけをコピーして、別に用意した「フォルダY」に(001 002 003と番号をふって)ペーストしたいのです。 フォルダY   | 001.jpg(フォルダ1の001.jpg) 002.jpg(フォルダ2の000.jpg) 003.jpg(フォルダ3の夏001.jpg) 004.jpg(フォルダ4の01.jpg) このようにそれぞれのフォルダの一枚目の画像をサムネイルのようにまとめたいのです。 しかしMacのAutomatorのワークフロー?の構築が、試行錯誤はしたのですが、どうも上手くいきませんでした。 画像フォルダが大量にあり、大変困っています。 そこで皆さんの知恵を借りたく思い質問しました。 解凍お願いします。

    • ベストアンサー
    • Mac
  • applescriptでファイルをコピー

    様々な場所にあるファイルをapplescriptでフルパスを集めるところまでできました。 "/home/documents/xxxxx"_"/home/pic/yyyyy"_ のような形になっています。アンダーバーは半角スペース このコピーしたいファイルも10や20ならターミナルにそのままコピーペーストして cp "/home/documents/xxxxx"_"/home/pic/yyyyy"_ ~/test のようにすれば順番にコピーしてくれるのでいいのですが 数が多くなればターミナルが受け付けてくれなくなります。 分割してコピーペーストをしてもいいのですが、 なんとかこのコピーまでの処理をapplescriptでできないかなと思いまして質問をさせていただきました。 多いときには数百のファイルになるので、繰り返し処理だと不可がかかりすぎるのではないかと思いループは使っていません 同時にいくつものファイルを処理しそうで怖いのと、数が少ない状態で試しても分からないので。 あと1つのファイルのサイズは1M以下から大きくて15Mくらいです。 できるだけ負荷をかけないようにコピーする方法はありますか? applescript内で変数にこのフルパスが入っているので、automatorかapplescriptの処理だと助かります。 よろしくお願いします。

    • ベストアンサー
    • Mac
  • Automatorで変数を使ったファイル検索

    Automatorを使って、毎日決まった時間にファイルのコピーをしたいのですが、手順がいまいちわからないので教えて下さい。 ファイル名は「当日の日付+15+文字列」で、日付の部分が変動します。 そこで、Automatorの「日付と時刻」変数から、必要な形式yymmddとなるように変数を作成しました。 変数名は「folderName」としました。 1)この変数はいつでも呼び出せるように保存するにはどうしたらよいですか? Automatorのカレンダーアラームで、以下のようにワークフロー(?)を作りました。 ------------------------- ・変数の値を取得   →上記のyymmddとなる日付 ・Finder項目を検索   →検索条件 「名前」 が 「folderName」 を含む    変数名は手で入力しました ・フォルダの内容を取得 ・Finder項目をコピー ------------------------- 一連の動作を確認すると、以下のようなログが残っていました。 ・変数の値を取得  完了 ・Finder項目を検索  完了 ・フォルダの内容を取得  完了 -1warning  アクション”フォルダの内容を取得”に必要なデータがありません。 ・Finder項目をコピー  完了 -1warning  アクション”Finder項目をコピー”に必要なデータがありません。 2)検索するファイル名のところに、手打ちで変数名を入れたことが間違っているように思うのですが、変数名はどのようにして指定したらよいですか? 初歩的な質問かと思いますが、ご指導宜しくお願いします。

    • ベストアンサー
    • Mac
  • AutomatorのFinder項目のフィルタ適用

    お世話になります。 以前、こちらで「Automatorで変数を使ったファイル検索」というタイトルで相談させていただいて、お陰様で希望通りの結果を得ることができました。 http://okwave.jp/qa/q8563519.html 前回相談させていただいた時は、Automatorを使って特定の時間に、流動的なファイル名のフォルダを別のフォルダにコピーをしたい、という内容が目的でした。 今回はこれまでと状況が変わり、特定の時間では対応できなくなってしまったので、Automatorで特定のフォルダを監視しつつ、特定の条件を満たすファイル(流動的なファル名)が作成された時点でコピーの処理を実行したいのですが、「Finder項目にフィルタを適用」の部分でつまづいています。 検索したいファイル名は、12時台に作成される 「yymmdd12○○○.csv」と、 16時台に作成される「yymmdd16○○○.csv」というファイル名です。 監視するフォルダにはこのcsvファイル以外にも毎日複数のファイルが作成されています。 Automatorでは以下のように試してみました。 1. 指定されたFinder項目を取得 2. フォルダの内容を取得 3. 変数の値を設定     変数名:今日の日付     カスタムフォーマット:yymmdd 4. Finder項目にフィルタを適用 4. のフィルタの部分で、ファイル名に「12時台」を示す文字列を付与した「yymmdd15」というキーワードで検索をしたいのですが、フィルタの設定ではどのようにしたらよいのかわかりません。 そもそもフィルタの適用の設定で、変数を使うことはできないのですか? 12時台と16時台の2つの条件を設定するのは難易度が高そうなので、16時台の方は今までのやり方でAutomatorで指定の時間に処理を実行する方法でも構いません。 Finder項目にフィルタを適用する際に、変数を使用する方法を教えて下さい。 もしそれが不可能でしたら、他にどのような方法がありますか? ご指導よろしくお願いします。

    • ベストアンサー
    • Mac