Вопрос по shell ...

Сергей Владимирович
На сайте с 24.08.2008
Offline
121
488

Подскажите пожалуйста как в консоли пакетно отредактировать кучу файлов скажем с разширением *.html

А имеено найти и заменить строку, либо просто добавить но чтобы она была в определенном месте, например не после тега <body/>

И более того надо чтобы редактор прошолся по подпапкам и там сделал тоже самое ...

Возможно ли это ? или потребуется полностью выкачивать сайт делать десктопным софтом а потом заливать обратно ?

Массовый постинг на AVITO.RU | IRR.RU (http://job.consultant-plus.com/)
Boris A Dolgov
На сайте с 04.07.2007
Offline
215
#1

find . -type f | while read fname; do

mv $fname $fname.old

sed 's|</body>|blablabla</body>|g' $fname.old > $fname;

#rm $fname.old #если не нужен бекап

done

С уважением, Борис Долгов. Администрирование, дешевые лицензии ISPsystem, Parallels, cPanel, DirectAdmin, скины, SSL - ISPlicense.ru (http://www.isplicense.ru/?from=4926)
MM
На сайте с 04.02.2009
Offline
31
#2

find -type f -name "*\.html" -exec sed -i "s/<body\/>/newstring<body\/>/g" '{}' \;

A
На сайте с 22.02.2009
Offline
39
#3
perl -p -i -e 's/oldstring/newstring/g' `find ./ -name *.html`

вот так, например

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий