作者: ねこ丸
日時: 2005/1/13(11:04)
  ねこ丸です。

機械伯爵 さん writes:

>  最近、ふと思ったんですが、パソコン持ってる「普通
> の人」がスクリプトを書く場面って何でしょうか?
> 
>  勿論「書かなくてもいいけど、書けば他のアプリを起
> 動するより楽」という意味ですが。

  自分の見解では、日常的にそういう使い方を志向していない限り書く場面は永
久にない、です。例えば「クリック1回をたくさんくり返す」のと、コマンドや
スクリプトを何か一つ覚えるのでは明らかに前者の方が学習コストが低いです。
トータルでは学習コスト+肉体的な疲労+同じ操作を何回も繰り返す精神的な疲
労とか、細かい計算が必要ですが(必要なのか?)、次にいつ使うか分からない
ものを学習しようと思うのはフツー「酔狂」と呼びます。
  まして単純操作の繰り返しから解放される!とかいう効果が目に見えなければ、
何かを習得しようなんてまず思わないでしょう。

  そしてある程度の自動化は、OS X であれば次の Tiger でスクリプトを書く必
要がなくなります。(Windows や Liux のデスクトップ環境は知らない)

Automator(要 QuickTime)
http://www.apple.com/jp/macosx/tiger/automator.html

  と言いつつ、最近自分で書いた小物(Ruby)は

require 'date'
require 'net/ftp'

REMOTE_DIR = リモートのディレクトリ
LOCAL_DIR  = ローカルのディレクトリ

# 取得
ftp = Net::FTP.new( サイト, ユーザー名, パスワード )
ftp.passive = true
ftp.getbinaryfile( REMOTE_DIR + 'analog.html', LOCAL_DIR + 'analog.html' )

# 昨日の Date オブジェクト
date = Date.today - 1;

# rename
File.rename( LOCAL_DIR + 'analog.html',
             LOCAL_DIR + sprintf( "analog%04d%02d%02d.html",
                                  date.year, date.month, date.day ) )

  こんな感じ。FTP でサーバ上の analog の結果を取得してきて、実行した前日
の名前で保存するってやつです。これを cron で毎朝6時に実行することにしま
した。あー。今思ったけどわざわざ rename しないで最初から目的の名前で保存
すればいいじゃん。全部別々に動作を試してあとでくっつけたのが丸分かりだ。
まーいっか。どうせまたいじるだろうから。


>  なんてなコトを、家計簿管理ソフトを書きながら考え
> てます。

  MoBo
  http://wiki.fdiary.net/MoBo/

  を使ってたんですが、月単位でしか編集できないのがまどろっこしいので最近
つけなくなりました(^^;  なので今年のこっそり目標の一つに、こいつに day 
クラスを追加するってのがあったりします。1年以上前から構想はあるみたいな
んですけどねぇ。。。

--
    ねこ丸