2007年08月05日

メール送信コマンドの作成

Windows環境で日常業務の自動化を検討しています。
何らかの自動処理実施後、処理結果をメール送信しようと考えています。

UnixやLinuxでは、mailコマンドがあり、コマンドラインでメール送信が出来ます。
Windowsでは、そんなコマンドはなく、GUIでしか送信できない。

では、自分でメール送信コマンドを作成する事にします。
開発言語は、簡単な事を簡単に実装できるRubyにしました。

一から作るのは、大変なので、まずはネット検索しました。

<参考>
net/smtp
添付ファイル付メールを送信する Ruby スクリプト


コマンド概要

引数で指定した内容でメールを送信します。
別途、SMTPサーバが必要になります。

必須引数
・送信元アドレス(--from)
・送信先アドレス(--to)
 カンマで区切って複数指定可能です。
・件名(--subject)
・SMTPサーバ(--smtp)
・本文(--text)

オプション引数
・添付ファイル(--attachment)
 
Posted by koko at 00:40  |Comments(0)TrackBack(2) | Ruby

2007年08月04日

日時の文字列表現

Rubyで日時を指定の形式で文字列表現する方法をメモしておきます。

p Time.now.to_s # => "Mon Oct 20 06:02:10 JST 2003"

p Time.now.strftime("%Y-%m-%d %H:%M:%S") # => "2007-08-04 18:06:42"


<参考>
Timeクラス
 
Posted by koko at 18:08  |Comments(0)TrackBack(0) | Ruby

2007年07月08日

WSHでポップアップ表示の例

部屋の本棚に埋もれていた古い雑誌を見ていると、RubyでWindows Script Hostを使用してポップアップを表示する例が載っていました。
ちょっとした時に使いたくなるような気がするので、メモしておきます。

require 'win32ole'

wsh = WIN32OLE.new('Wscript.Shell')
wsh.Popup('Hello')


動作環境
Ruby: Version 1.8.5
OS: Windows XP
 
Posted by koko at 23:41  |Comments(0)TrackBack(4) | Ruby

ワンライナーの例

Rubyのお手軽な使用方法としてワンライナーがあるけど、私はいまいち使いこなせていません。
書き方をメモしておけばもっと使えるようになるかな?

正規表現による文字列置換
> ruby -e 'puts File.read("src.txt").gsub(/abc/, "xyz")' > dest.txt

 
Posted by koko at 23:34  |Comments(0)TrackBack(0) | Ruby

2007年06月10日

redMineインストール(2)rake load_default_dataでエラー

Ruby版Trac、Ruby on Railsで作られたredMineをインストールしてみました。
そのときに、手間取った部分をメモしておきます。

「rake load_default_data RAILS_ENV="production"」でエラー

上記コマンドを実行してテーブルにデータを作成しようとしたのですが、次のようなエラーが発生しました。
Error: Mysql::Error: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '=': SELECT * FROM roles WHERE (roles.name = '膊∞茹) LIMIT 1
Default configuration data can't be loaded.

redmineデータベース作成時の文字コードを間違えていたのが原因でした。
UTF8で作成しなおして成功!

動作環境
OS Fedora Core 1
redMine 0.5.0
 
Posted by koko at 12:05  |Comments(0)TrackBack(0) | Ruby

2007年06月09日

redMineインストール(3)起動時のポート指定

redMineを起動時、次のオプションを指定すると、ポートを選択できました。
ruby script/server -e production -p 3005

ただし、これはredMineに限ったことではなく、Rails環境で一般的な指定方法ですね。

動作環境
OS Fedora Core 1
redMine 0.5.0
 
Posted by koko at 14:11  |Comments(0)TrackBack(1) | Ruby

redMineインストール(1)rake db:migrateでエラー

Ruby版Trac、Ruby on Railsで作られたredMineをインストールしてみました。
そのときに、手間取った部分をメモしておきます。

「rake db:migrate RAILS_ENV="production"」でエラー

上記コマンドを実行してデータベースにテーブルを作成しようとしたのですが、次のようなエラーが発生しました。
rake aborted!
undefined method `smtp_settings=' for ActionMailer::Base:Class

使っていたRailsのバージョンが古かったために発生したようです。

Rails 1.1.6を使用していたのですが、Rails 1.2.3へ更新したら上記コマンドが正常終了し、テーブルが作成できました。

動作環境
OS Fedora Core 1
redMine 0.5.0
 
Posted by koko at 13:59  |Comments(0)TrackBack(0) | Ruby

2007年01月01日

RadRails Subclipseプラグイン

RadRailsでは、デフォルトでSubclipseプラグインを利用できるようにしているらしいのですが、上手く動いてくれませんでした。
更新マネージャで登録済みのSubclipseプラグインをアップデートしようとしても、次のようなエラーが発生し、アップデート出来ませんでした。

RadRails(0.7.2)必須: プラグイン"org.eclipse.core.runtime(2.1.0)"、またはそれ以降のバージョン。


この問題を解決して、RadRailsでSubversionを利用できるようになったので、その方法を以降にメモしておきます。

続きを読む
 
Posted by koko at 20:27  |Comments(0)TrackBack(0) | Ruby

2006年12月31日

RadRails 日本語化

最近、RubyやRuby on Railsの開発環境に、RadRailsを使っています。
デフォルトでは、英語表記となっているのですが、これを日本語化してみました。

インターネットを検索すると、RadRailsの日本語化には、いくつかやり方があるようです。

ひとつは、Eclipseの日本語化と同様の方法で、Eclipseの言語パックをダウンロードして、所定のフォルダに展開する方法です。
この場合は、すべてを日本語化することが出来ないらしいです。

もう一つは、Pleiadesを利用する方法です。
私は、こちらの方法を採用しました。
以降に、この方法の手順をメモしておきます。

続きを読む
 
Posted by koko at 22:05  |Comments(0)TrackBack(0) | Ruby

2006年11月03日

ログアウトしてもコマンドの実行を続ける

Linux上で、RailsプロジェクトのWEBrickを実行したままにしてログアウトをしたいと思いました。

続きを読む
 
Posted by koko at 20:37  |Comments(0)TrackBack(0) | UNIX Linux , Ruby

2006年10月28日

Rails 複数選択のselectタグを使用する

Ruby on Rails で複数選択可能なselectタグを扱う方法を調べたのでメモしておきます。

続きを読む
 
Posted by koko at 20:56  |Comments(0)TrackBack(0) | Ruby

2006年10月15日

Apache2 で Rails を動かす(CGI編)

Windows XP、Apache 2.0.55 で Ruby on Rails を動作させます。

続きを読む
 
Posted by koko at 12:53  |Comments(0)TrackBack(0) | Ruby

rake migrate で /tmp/mysql.sock エラー(3)

前回の続きです。

前回は、Fedora Core 1、MySQL 5.0.26 で、"rake migrate"コマンドを実行し、次のエラーが発生し、それを解決(?)しました。
Mysql::Error: Lost connection to MySQL server during query: SET NAMES 'utf8'

でも次のエラーが発生しました。
Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

今回は、これを解決していきます。

続きを読む
 
Posted by koko at 02:19  |Comments(0)TrackBack(0) | Ruby

rake migrate で /tmp/mysql.sock エラー(2)

前回の続きです。

前回は、Fedora Core 1、MySQL 5.0.26 で、"rake migrate"コマンドを実行し、/tmp/mysql.sock が存在しない旨のエラーが発生し、それを解決したんだけど、次のエラーが発生してしまいました。

Mysql::Error: Lost connection to MySQL server during query: SET NAMES 'utf8'

続きを読む
 
Posted by koko at 00:34  |Comments(9)TrackBack(0) | Ruby

2006年10月14日

rake migrate で /tmp/mysql.sock エラー

Fedora Core 1、MySQL 5.0.26 で、Ruby on Rails を動かそうとしました。すると、"rake migrate"コマンドで /tmp/mysql.sock が存在しない旨のエラーが発生しました。

エラーメッセージ
No such file or directory - /tmp/mysql.sock

続きを読む
 
Posted by koko at 23:15  |Comments(0)TrackBack(0) | Ruby