Ruby поиск и замена по файлам - PullRequest
0 голосов
/ 18 июля 2010

Я пытаюсь написать скрипт ruby, который будет искать в каталоге и его подкаталогах файлы HTML, открывать эти файлы HTML и вставлять следующую строку чуть выше тега закрывающей заголовка:

<link rel="stylesheet" href="styles.css" type="text/css" />

Я пытаюсь сделать это с Ruby, потому что это единственный язык, с которым я знаком, но у меня есть доступ практически к любому языку. Кто-нибудь может протянуть руку?

Приветствия

Eef

1 Ответ

4 голосов
/ 18 июля 2010
def find_and_replace(dir)
  Dir[dir + '/*.html'].each do |name|
    File.open(name, 'r+') do |f|
      new_file = f.read.sub /^( *)(<\/\s*head>)/, %Q(\\1  <link rel="stylesheet" href="styles.css" type="text/css" />\n\\1\\2)
      f.truncate 0
      f.write new_file
    end
  end
  Dir[dir + '/*/'].each(&method(:find_and_replace))
end

find_and_replace '.'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...