Rubyについて

» 5218
[5218]Rubyについて 投稿者:クロネコ 投稿日:07/11/09-16:57
Max OSX 10.4.10
ruby 1.8.2

テキスト整形を何とかMacJPerlからRubyに変えなくては
ならなくなり、初めの1歩からつまずいている者です。
とりあえずテキストファイルに書き込み閉じるところから始めている
んですが、どうしても先に進めません。
「test.rb」というテキストと、書き込みの対象になる「paper.txt」
を作り、「test.rb」には
--
paper = File.open("/フルパス/paper.txt",'w')
paper.puts 'OK'
paper.close
--
と打ってあります。

あとはターミナルで「ruby /フルパス/test.rb」改行、をするのですが
エラーが出てうまくいきません。
エラーは、
--
/フルパス/test.rb:1: syntax error
paper.close'OK'en("/フルパス/paper.txt",'w')
^
--
です。バージョン1.8.2がインストールされている事は確認できてます。
putsを使っただけの簡単なものは成功しています。

このテのセンスが全く無く途方に暮れております。
お分かりになる方、お知恵を拝借下さい。よろしくお願いします。
» 5219
[5219]Re: Rubyについて 投稿者:せうぞー 投稿日:07/11/10-00:20
File.open("/フルパス/paper.txt",'w') { |myfile|
myfile.puts('howdy!')
}

ではどうですか?
あと、改行文字はLFになっていますか?

ちなみに、ファイルハンドルを開かなくても、ターミナルでリダイレクトすれば幸せになれる感じがします。ターミナルウィンドウにドラッグ&ドロップでフルパスが得られますし。
#ruby script 'test.rb'
print 'Howdy!'

#tarminal
$ ruby test.rb > /fullpath/hoge.text
» 5221
[5221]Re^2: Rubyについて 投稿者:クロネコ 投稿日:07/11/10-22:35
> せうぞーさん
回答ありがとうございます。
LF改行…そういえばそんな文章を読んだような!全く意識してませんでした。
構文を含め、月曜に早速試してみます。
» 5224
[5224]できました! 投稿者:クロネコ 投稿日:07/11/12-10:02
> せうぞーさん
ありがとうございます。LF改行に変える事で成功しました。
教えていただいた構文でも確認しました。

なるほど…ターミナルで直接ファイルを指定もできるんですね。
個々のファイルを処理するならこっちの方がスマートですね。

とりあえず第一歩が踏み出せました。ありがとうございました。

このページをシェア