• ベストアンサー

Automatorについて

大量のファイルを選択し既存フォルダに移動させるだけの作業ですが、 フォルダ名:「AI¥001」,「AI¥002」,「AI¥003」.....「AI¥240」 ファイル名:「AI¥001¥01.AI」,「AI¥001¥02.AI」....「AI¥001¥26.AI」       「AI¥240¥01.AI」,「AI¥080¥02.AI」....「AI¥240¥26.AI」 各フォルダに26個のAIファイルを入れたいのですが、その作業を240回繰り返さなくてはなりません。Automatorの使い方をレクチャーしていただけませんか?

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

  • ベストアンサー
  • toast5
  • ベストアンサー率37% (239/638)
回答No.3

harawoさんの回答をヒントに「AppleScript ○○で始まるファイル」でググッてみました。 http://www.fsight.co.jp/asqs/nmac/9512/2.html tell application "Finder" set theFile to (every file of entire contents of desktop whose name begins with "ai001") repeat with aFile in theFile set label index of aFile to 4 move aFile to folder "ai001" of desktop end repeat end tell 私の環境(10.5)では一応これで動作するようです。ちょっとだけ解説すると、この中の「theFile」と「aFile」は「変数」と呼ばれ(自信なし)、どんな文字列でもいいのです(例えば「theFile」の替わりに「honyarara」でもいい。もちろん「tell」や「application」なんて文字列じゃダメだけど)。 しかし問題は、「残念ながらAppleScript自身は正規表現を扱えません」だそうだし、これだと結局この7行を240回ペーストして数字を書き換えなくちゃならず、それじゃ労力軽減効果がほとんどないということです。 こういう場合ふだんの私なら 001 002 003 ・ ・ ・ 240 という文字列を無理矢理にでもまず作って、あとは mi の <<<REPLACE-REGEXP-ALL>>> というツールコマンド(?)を使いますが、もっと利口な方法がいくらでもあるはずで、 しかし思いつかないので教えて差し上げられないのが残念です。

todaywall
質問者

お礼

お礼遅くなりました!ありがとうございました!

その他の回答 (4)

  • toast5
  • ベストアンサー率37% (239/638)
回答No.5

>AppleScriptのほうに話をのばしますが…… ぜひともよろしくお願いします。 エクセルでソートとか、Finderで名前でソート / 変更日でソートとかは結果が目で見えるので理解できるんですが、AppleScriptで「ソートが成功」するというのがどういうことなのか、残念ですが僕のレベルではまずそれがわかりません。 先頭から26個ずつ指定のフォルダに移動していくだけ、ということですが、指定すべきフォルダが240個ある場合は240通りの指定をするのでしょうか。 http://d.hatena.ne.jp/akane_neko/20081106/1227173072 ・・・と、いうような個別の疑問に答えていただくことも勝手に期待してますが、一般的に、こういう疑問を持った場合にどうやって調べればいいのかとか、そもそも AppleScript に詳しい人ってどうやって詳しくなったの? ゼンマイびゅんびゅんだけじゃ無理だよね、というようなこともじつは知りたいのですが。 (ただしかし、最近友人に「お前はどうやってHTMLを学んだの?」と聞かれて、「我流で一生懸命学んだとしか答えようがない」と返事をしたのは私です)

  • harawo
  • ベストアンサー率58% (3742/6450)
回答No.4

AppleScriptのほうに話をのばしますが…… ファイルがきっちり240×26個あり、かつ厳密に規則に従ったファイル名が付けられているとしたら、AppleScriptのプログラムはむずかしくありません。 Finderのコマンドに「sort ~ by name」というものがあり、ファイル名をキーワードにしたソートが行えます。ソートが成功すれば、あとは先頭から26個ずつ指定のフォルダに移動していくだけのプログラムで完了します。

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.2

私なら、ターミナルからmv使って、かな。

  • harawo
  • ベストアンサー率58% (3742/6450)
回答No.1

Autometorだけでは、ワークフローを240個作らなければならないでしょう。AppleScriptとAutometorの組み合わせになるか、AppleScriptのみでの対処になろうかと思います。AppleScriptだけでスクリプトを組んだほうが簡潔でしょう。 ※本題から離れますが、円マーク「¥」は、Windows OSにおいて、ファイルパスの区切り文字として使われるので、ファイル名に使用するのは好ましくありません。100%あなたのMacintoshで、その「AIファイル」の取り扱いが完結するならともかく、そうでないなら、とても危険です。 Windows OS、MS-DOSでのファイルパスの区切り文字は「¥」(日本語環境以外ではバックスラッシュ)。 Mac OS X、UNIX OSでは「/」(スラッシュ)。 旧Mac OSでは「:」(セミコロン)。 これらの記号を、ファイル名に使用しないでください。 (これも一括してAppleScriptでファイル名、フォルダ名を変更したほうがいいでしょう) ※「では、そのAppleScriptを書いてください」という質問にはお答えいたしません。それは質問ではなく、仕事の依頼ですから、現金の報酬が必要になります。これを機にAppleScriptの勉強をしたいと言うことなら、お手伝いするに、やぶさかではありません。

関連するQ&A