AppleScript アップルスクリプト 質問、発表 6
レス数が1000を超えています。これ以上書き込みはできません。
>>929
すみません。
tell application "Finder"
end tell
で囲まず処理してました。解決しました。ありがとうございます。 >>928
最初はとっつきにくいかもしれんけど、
rubyあたりでやった方が処理も速いし書くのもラクだよ。 >>931
ruby はchoose folder みたいな事が出来ちゃうのですか? >>932
そこはASに任せればいい。逆に言えばそこだけAS使って後はrubyで書けばいい。 まだ初心者さんみたいだから、
rubyとかの外部スクリプトをまぜるのは
少々難易度が高いかも…
do shell script "ruby -Ku -e 〜"
って直接AppleScript内に書く場合は、
ダブルクォートなんかのエスケープが面倒くさいし、
.rbファイルを実行するにしても、.app内にファイルを置くかどうかで
パスの書き方が変わってきたりして…
>>934
横レスだけど、AppleScriptでやるより処理が速いし、
正規表現でファイル名置換したりできるのは便利ですよ >>934
慣れないうちはそう思うけど、慣れると逆にASで書く方がなにかと面倒くさい。 guiめも
CocoaDialog
Platypus
inquirer.rb
terminal-notifier そんな速度求めてないんじゃないの
デバッグするにしてもどっちかで完結した方がいいっしょ ASの基本もおぼつかない人を捕まえてRubyを薦めるなんて、非効率化道へ誘導しようとしているとしか思えない ruby使えるだけで威張れるからこのスレ好きです
これからもrubyを薦めます 時代はpython
>>939
ほんそれ。使う人によって効率は変わってくるっていう基本がわかってない いや、どうせどっちもわかってないんだから
rubyなりpythonあたりから覚えても一緒じゃん。 でもこのスレで話すのはノーサンキュー
語りたい奴は既存のスレ移動するか、自分でスレ立てろよ asが便利なのってマックリソース込みのファイル移動とかコピーだよな そんなことにASなんか使う必要ないでしょ
10.4までなら MvMac/CpMac コマンドとか使えばいいし
10.4以降は mv/cp でよい
ASの特色はそういうレベルじゃない 対象のファイルが複数のフォルダーに散在している場合や、
同一フォルダー内でも縦横無尽に散らばっている場合で、
それらをまとめて処理するようなときには、
コマンドファイルでも、
アップルスクリプトでも、
オートメーターでも、
自分の好みにあわせてどれでも利用すれば良いじゃない
もちろんコマンドファイルが処理速度などの点でいちばん有利なんだろうと思うけど、操作結果のフィードバックが目立たなさすぎるので不安な人もいるだろうし
確かにアップルスクリプトの特色はファイル操作だけじゃないけど、
だからといってファイル操作ごときにアップルスクリプトを使うな、コマンドを使え、というのはおかしくないかね? リソース込みの移動やコピーなんて
今はOS添付のコマンドラインなら普通に出来るから
リソースがどうのというのは前提条件が間違ってますよ
という指摘でしょう >>931みたいにAS以外を押しつけてくる輩もいるから敏感になってるのかな
別にASを否定したつもりはないよ
>>952の補足してくれた(ありがとう)とおりで、使うな、ではなく
その条件では別に必要ない(使ってもよい)ということ
ASを推す気持ちはわかるけど理由が理由になってないから…… 他人がどんな言語選択するかなんて好き勝手すればいいじゃないか
そういうのは他所で議論してください シェル使っていいならjava でもなんでもいいけど こういうのが続くと
do shell scriptが絡んだ質問がしにくくなるなあ
必要に迫られてjava使ってみたけど
普段スクリプト言語ばかりだから
爆速に驚いたよ
スレチすいません 個人的にASの有難みを痛感したのは、WindowsでiTunesをスクリプト処理しようとした時だったな ファイルコピーやら移動やらするにも、ASだと色々と自分で処理を考えてやらなきゃいけないけど、
shell系なら色々と処理が用意されてるから圧倒的に楽に書けると思うが。 68KやPowerPC時代はApple Script一択だったけど
今は選択肢増えたんだし
慣れたのでいいと思う ただの慣れの問題だろ
ASだから考える時間が増えるとは一概に言えない AppleScriptのファイルコピーって挙動があやしくない?
バッティングしたのかしらんがスルーされるときがある そもそも、ここはapplescriptのスレなんだから
どの言語が使い易いとか便利とかは関係ないだろう
そういう話になるならobjcの方が楽に書けるし自由度もある訳だから比較にならない
しかしapplescriptの便利さをただのファイル移動としてしか理解されてない人間に
だよな、とか自信満々に書かれても「違うわ」と言いたくなる気持ちも分かる 俺はファイル移動よりもpythonとか言ってるやつのほうがわかってない気がする。
とケチをつけるくせに更に勿体つけてみる。 >>963
AppleScriptというよりfinderが、じゃないの? >>966
ファインダーなのかなぁ
普通同じフォルダに複数同時コピーしても処理するよね?もち別名ファイル >>968
エラーは出ないの?
挙動怪しいは俺もそう思うけど、そういう場合たいていはエラー吐いてるけどなあ
まあエラーで原因がちゃんとわかるかっていうとそれは別の問題だけどw もしファイルが既にあった場合の対処はしていないのかな?
ベースの部分が出来たーと思ってから
もしもの場合に備えていくと
スクリプトがどんどん膨らんでいくよね 初歩的で申し訳ないんですが
エラーログどこでみれますか? >>971
スクリプトエディタの下のほうに
「返された値」ってタブみたいのがあって、
実行したあとそこをクリックすると処理の流れは追えるけど、
それではダメ?
あとは、
log 変数
log "ここまではちゃんと動いてる"
みたいに、log文を自分で仕込んでチェック
(返された値のところに表示される) >>971
メニューバー>ウインドウ>ログの履歴 というのもある 最近気が付いたけど
tell application の中でdo shell scriptを実行すると
ログ見るとエラーメッセージが出てるのね
問題ないらしいけど >>974
applicationに対してdo shell scriptの命令を送って、
それに答えられないからtellブロックの外で命令を実行、
みたいな動作だよね
だったら、do shell script命令に応えられるアプリが
あるってことなのだろうか… >>974-975
そういう仕様だから仕方ないとはいえちょっと気持ち悪いよね tell me to do shell script "..."
ってやるとエラー出ない TN2065
Does it make a difference which application I tell to do shell script?
For the most predictable results, always put do shell script calls outside of any tell block, or use tell me. In
practice, it usually doesn’t matter unless 以下省略 あー、にゃるほど。
最初からtellブロックの外(スクリプトオブジェクト)に向かって
do shell scriptメッセージ送っちゃえばいいわけか。
thx
勉強になった。 最初から do shell script の解釈が tell me で固定されてればいいだけの話なんだけどね
こんなんよそに tell できたとしてもトラブルの種にしかならないし 乙です
たまには新機能付けてくれれば盛り上がるのに
Automator にある選択テキストの取得
みたいなの付けてくれるとか
まあキーストロークで行けるんだけど 一応OSメジャーアップデートのたびに地味に新機能ついてるけど、知ってた?
ぶっちゃけもうASはほとんど完成されてるし、それ自体の機能より
AS未対応のアプリが対応するとかの方がインパクトある気がする OSXになってゴッソリ機能が減った印象だったんだけどどうなんだ
record機能が秀逸だった記憶しかないけど applescript://com.apple.scripteditor?script=say%20%22%E5%9F%8B%E3%82%81%22 repeat 9 times
display dialog "うめ" buttons {"おk"}
end repeat repeat 8 times
display dialog "うめ" buttons {"おk"}
end repeat repeat while resNum < 1000
display dialog "Ume" buttons {"OK"} default button 1
end repeat >>991は英語ボイスにしとると鳴らんからこれで
say "Woo-meh" try
say "うめ"
on error
say "Go to next"
end try applescript://com.apple.scripteditor?script=open%20location%20%22https%3A%2F%2Fegg.2ch.net%2Ftest%2Fread.cgi%2Fmac%2F1491018171%2F%22 on quit
display dialog "次スレは>>981です。" buttons {"OK"} default button 1
continue quit
end quit このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 1211日 0時間 41分 34秒 レス数が1000を超えています。これ以上書き込みはできません。