回答:
unixyマシンで実行している場合は、常にバックティックに配置することで、rubyの下でシェルコマンドを実行できることを忘れないでください。
`mkdir -p /a/b/c`
救助へのパス名!
Pathname('/a/b/c/d.txt').dirname.mkpath
FileUtils.mkdir_p '/a/b/c'
+を d.txt
同時に実行することを許可することを意味しますか?
Pathname('/a/b/c/d.txt').dirname.mkpath
し、File.write('/a/b/c/d.txt', content)
なしfilename = '/a/b/c/d.txt'.rpartition('/').last
と解析の残りの部分
独自のロジックを使用することもできます
def self.create_dir_if_not_exists(path)
recursive = path.split('/')
directory = ''
recursive.each do |sub_directory|
directory += sub_directory + '/'
Dir.mkdir(directory) unless (File.directory? directory)
end
end
したがって、パスが「tmp / a / b / c」の場合、「tmp」が存在しないと「tmp」が作成され、「tmp / a /」などになります。
FileUtils
そしてPathname
おそらくRubyシェルスクリプトのための最も重要なツールです。