Создание пустого файла в Ruby: эквивалент "touch"?

Каков наилучший способ создания файла пустой в Ruby?

Что-то похожее на команду Unix, touch:

touch file.txt

Ответ 1

FileUtils.touch выглядит так, как он есть, и зеркалирует * команду touch:

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

* В отличие от touch (1) вы не можете обновлять только mtime или atime. Он также пропускает несколько других приятных вариантов.

Ответ 2

Если вы беспокоитесь о файлах:

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

Из docs:

Если предоставляется дополнительный блок кода, ему будет передан открытый файл в качестве аргумента, и объект File будет автоматически закрыт, когда блок завершается.

Ответ 3

В 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") {}

Ответ 4

А также, менее выгодный, но очень короткий:

`touch file.txt`

Ответ 5

Просто пример:

File.open "foo.txt", "w"