У меня вопрос по bash, точнее regexp. Какая-то гадасть во все файлы index.php повставляла вредноносный код, сайтов много, вручную заменять очень долго, пытался через скриптик, но выходит ошибка -
sed: -e expression #1, char 3047: unterminated `s' command
догадываюсь что где-то проблема со спецсимволом. Скрипт работает, так как тестировал не один раз, но сейчас какой-то символ мешает нормально отработать.
Вот сам скрипт, с тестовым стрингом:
#!/bin/sh
while read filename
do
echo $filename
cat $filename | sed 's|test_string||'g > 1.txt
mv 1.txt $filename
done < file.txt
он ищет и удаляет test_string c входного файла file.txt (там список файлов где удалять)
А вот то, что мне нужно реально удалить
http://pastebin.com/6LNUDnVR но скрипт просто очищает файл полностью.
Помогите, пожалуйста, очень нужно.