web-dev-qa-db-ja.com

Rubyで空のファイルを作成する: "touch"と同等ですか?

Rubyでemptyファイルを作成する最良の方法は何ですか?

Unixコマンドに似たもの touch

touch file.txt
111
Abhi Beckert

FileUtils.touch それは何をするかのように見え、ミラー* touchコマンド:

require 'fileutils'
FileUtils.touch('file.txt')

* touch(1) とは異なり、mtimeまたはatimeのみを更新することはできません。また、他のいくつかの素敵なオプションもありません。

172
Dave Newton

ファイルハンドルが心配な場合:

File.open("foo.txt", "w") {}

docs から:

オプションのコードブロックが指定されている場合、開かれたファイルが引数として渡され、ブロックが終了するとFileオブジェクトが自動的に閉じられます。

42
Michael Kohl

Ruby 1.9.3+では、_File.write_(a.k.a _IO.write_ )を使用できます:

_File.write("foo.txt", "")
_

以前のバージョンでは、 _require "backports/1.9.3/file/write"_ を使用するか、File.open("foo.txt", "w") {}を使用します

21

また、あまり有利ではありませんが、非常に簡単です:

`touch file.txt`
2
Boris Stitnicky