AppleScriptで、あるフォルダ内のファイルを解凍してFTPでサーバーにアップするという処理をさせようとしています。
tell application "Finder"
activate
select folder "ChangeData" of startup disk
open selection
select document file "DATA20091014.lzh" of folder "CangeData" of startup disk
end tell
ここまでは「コンパイル」を実行しても正しくプログラムに出来たのですが、ご覧の通り、希望の動作をさせるには記述が足りません。
文法がめちゃくちゃなのを承知で敢えて書きますと、
tell application "Finder"
activate
select folder "CaspaData" of startup disk
select all contents of selection ←選択したフォフダの中身を全て選択する(記述法不明)
rename selection to "today.lzh" ←選択したファイルの名前を「today.lzh」に書き替える(記述法不明)
select all contents of selection ←選択したフォフダの中身を全て選択する
open selection ←ここでファイルが解凍されます
select document file "today.lzh" of folder "CaspaData" of startup disk
delete selection ←選択したファイルを捨てる
select all contents of selection ←選択したフォフダの中身を全て選択する(記述法不明)
rename selection to "Data.csv" ←選択したファイルの名前を「Data.csv」に書き替える(記述法不明)
end tell
"CaspaData"というフォルダの中にはメールソフトが自動的に保存したファイル1個だけが入っているので、こうすることによって、
1. フォルダ内のファイルが何と言う名前でも"today.lzh"に書き替える
2. today.lzhを解凍する
3. today.lzhをゴミ箱に捨てる
というプロセスを自動処理し、フォルダ内にはメールソフトが保存したアーカイブの解凍後のファイルだけが残るようにしたいという訳です。
最終的には、このリネームしたCSVをNetFinderというFTPソフト(スクリプト対応ソフトです)で希望の場所にアップロードしたい訳なのですが…。
http://force4u.cocolog-nifty.com/skywalker/2008/ …
こんなところを見ると、そこに存在するファイルの名前が何であっても目的の名前に変えることの出来るスクリプトも組めるんだなということは解るんですが、私には知識がなくて内容が理解できないので、スマートではないことは承知の上で「1つしかファイルがないのに"全て選択"で選択してリネーム」という手段をとろうとしています。
ここで、上に「記述法不明」と書いた部分は、Applescriptではどう書けばいいのでしょうか?
No.1ベストアンサー
- 回答日時:
いくら AppleScript が取っつきやすいとは言っても、ある程度勉強しないと無理ですよ。
http://www.tonbi.jp/AppleScript/intro/basic.html
このあたりを参考に、基礎を勉強してください。そうすれば書かれているリンク先の内容も理解できるでしょう。
それまでは Automator でガマンしておきましょう。フォルダ内のファイルのリネームくらいなら Automator で処理できるはずです。
これだけでは何なので、「フォルダ内の全ファイルをリネーム」という部分だけ。
全ファイルをワンアクションでリネームする事はできません。フォルダ内の全アイテムについて一つずつリネーム処理を繰り返すという方法を取ります。具体例は以下。この場合は、単に全ファイルの末尾に .lzh を付けるだけです。
set theFiles to every file of theFolder
repeat with aFile in theFiles
set name of aFile to ((name of aFile) as string) & ".lzh"
end repeat
リネーム方法のサンプル、どうもありがとうございました。
もちろん、こういったものは勉強しながらでないと使えないので、こうして質問させて頂いては知識を取り込んで組み合わせて応用の幅を広げています。
ご提示頂いた基本編のページは何度か見たことがありましたが、こういうステップ・バイ・ステップのものでは私は結局理解できず、色々サンプルを押してて頂いては自分なりに改造して行くうちに逆に基礎に辿り着くというのがいつものパターンで、JavascriptもPerlも、そうやって徐々に自力で組めるようになりました。
今回は、教えて頂いたサンプルから、下のように組んで実用に成功しました。
「専門家」の方からすればお笑いぐさのスクリプトだと思いますが…。
tell application "Finder"
activate
set theFiles to every file of folder "ChangeData" of startup disk
repeat with aFile in theFiles
set name of aFile to "aaaa.lzh"
end repeat
open document file "aaaa.lzh" of folder "ChangeData" of startup disk
repeat
delay 5
exit repeat
end repeat
delete document file "aaaa.lzh" of folder "ChangeData" of startup disk
end tell
tell application "Finder"
select folder "ChangeData" of startup disk
open selection
set theFiles to every file of folder "ChangeData" of startup disk
repeat with aFile in theFiles
set name of aFile to "test.csv"
end repeat
end tell
tell application "URL Access Scripting"
upload file "Macintosh HD:ChangeData:test.csv" to "ftp://aaaa:pass@aaaa.jp//www/aaaa/cgi-bin/" replacing yes without binhexing
quit
end tell
tell application "Finder"
activate
repeat
delay 5
exit repeat
end repeat
set theFiles to every file of folder "ChangeData" of startup disk
repeat with aFile in theFiles
delete aFile
end repeat
end tell
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/12】 急に朝起こしてきた母親に言われた一言とは?
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・好きな「お肉」は?
- ・あなたは何にトキメキますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・チョコミントアイス
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・あなたの習慣について教えてください!!
- ・ハマっている「お菓子」を教えて!
- ・高校三年生の合唱祭で何を歌いましたか?
- ・【大喜利】【投稿~11/1】 存在しそうで存在しないモノマネ芸人の名前を教えてください
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・家の中でのこだわりスペースはどこですか?
- ・つい集めてしまうものはなんですか?
- ・自分のセンスや笑いの好みに影響を受けた作品を教えて
- ・【お題】引っかけ問題(締め切り10月27日(日)23時)
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
拡張子はなぜ、大文字と小文字...
-
フォルダの中に1個しかファイ...
-
Excelの「アクセシビリティ 検...
-
vssver2.scc って消してもいい...
-
ファイルの開き方(拡張子なし)
-
移動先にも同じファイル名が存...
-
ターミナルソフトで全スクロー...
-
ワードやエクセルのファイル名...
-
windows (ウィンドウズ) の 「...
-
iphoto-画像1枚ずつのロールが...
-
パソコンのスキップとは何ですか?
-
macユーザーです!拡張子「Thum...
-
Windowsに謎のファイルがデスク...
-
MacのFinderでmovファイルのサ...
-
Windows10Homeでthumbs.dbを生...
-
CSVデータをNumbersで自動的に開く
-
バッチで指定したファイルを選...
-
SmartVisionで録画したファイル...
-
隠しファイルを削除しても大丈...
-
AVCHDのiMovieへの読み込みがで...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
拡張子はなぜ、大文字と小文字...
-
フォルダの中に1個しかファイ...
-
ファイルの開き方(拡張子なし)
-
vssver2.scc って消してもいい...
-
macユーザーです!拡張子「Thum...
-
パソコンのスキップとは何ですか?
-
windows (ウィンドウズ) の 「...
-
移動先にも同じファイル名が存...
-
フォルダーのプロパティで表示...
-
ワードやエクセルのファイル名...
-
Excelの「アクセシビリティ 検...
-
プロパティの「所有者」の削除
-
ターミナルソフトで全スクロー...
-
任意のフォルダを選択し、その...
-
Wordのファイルを開いたとき最...
-
Microsoft Excel previewer に...
-
microSDに画像を移動させようと...
-
メモ帳で、それぞれの行で、あ...
-
エクスプローラーでファイルを...
-
隠しファイルを削除しても大丈...
おすすめ情報