- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:findを使うのか?)
Rubyで指定したディレクトリ配下のファイルを変更する方法は?
このQ&Aのポイント
- Rubyで指定したディレクトリ配下のファイルを変更する方法について教えてください。
- ディレクトリ構造があり、特定のディレクトリ直下の複数のファイルを一括して書き換えたい場合、Rubyを使うことができます。
- 具体的には、ファイル名やディレクトリ名を取得して操作することができるので、ループ処理を使って順番にファイルを書き換えることが可能です。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは こんなかんじで如何でしょうか? -----ここから # coding: windows-31J ROOT_DIR = 'C:/root_dir' def add_str(file, char) File.open('temp.txt', 'w') do |fo| File.foreach(file) do |line| line.chomp! case line when 'A='; fo.puts "#{line}#{char}" when 'B='; fo.puts "#{line}(#{char})" else fo.puts line end end end File.delete(file) File.rename('temp.txt', file) end Dir.chdir(ROOT_DIR) Dir.foreach('.') do |subdir| next if /\.\.?/ =~ subdir next if File.file?(subdir) c0 = subdir[0] c1 = subdir[1] Dir.chdir(subdir) add_str('a.txt', c0) if File.exist?('a.txt') add_str('b.txt', c1) if File.exist?('b.txt') Dir.chdir('..') end -----ここまで
お礼
完璧です。感動しました。ヽ(^。^)丿 でも、何やってるのか全然理解できないですが。(;´▽`A`` とりあえず、これから調べて、何やってるかわかるようになれば、少しだけスキルがアップできますね!