Создание пустого файла в 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"