12:42p |
юниксоидам Друзья-товарищи,
расскажите, пожалуйста, как пользоваться командой sed для пакетного изменения большого количества файлов.
Ситуация (Марин, я не сейчас собираюсь править! мне просто хочется понять принцип, на будущее): есть директория, в ней несколько десятков файлов. Нужно их все взять и некий фрагмент текста заменить во всех на другой. При этом:
- исходный и желаемый фрагменты текста в несколько абзацев, т.е. в них есть перевод строки - фрагменты содержат и русские, и латинские символы - в них есть всякие знаки препинания, включая кавычки, апострофы и проч. - (опционально) фрагмент надо заменять только в определенном контексте, а если случайно встретится в другом, то не нужно.
Я даже знаю, что для пакетной замены используется sed, мануал видела, но с учетом перечисленных тонкостей - наверняка промахнусь. Хочу советов.
p.s. Вы спросите, почему я не задам этот вопрос супругу. Отвечаю: потому что супруг не любит мне что-то объяснять и говорит "RTFM", а вам приятно будет помочь даме. |