Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / как на CentOS заменить все фаилы с одним названием ? / 10 сообщений из 10, страница 1 из 1
07.02.2012, 05:16
    #37649580
werter2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как на CentOS заменить все фаилы с одним названием ?
Может кто из зубров подскажет? есть сотни одинаковых файлов которые нужно заменить на другой .
данные файлы в разных папках и подкаталогах . но все эти папки под www.
т.е откуда начинать поиск фаилов установить не проблема.

пробовал так : -sh-3.2# find /var/www/html/хххххх.com/sub/ -name 11111aa.html -exec cp /var/www/newTemplate/index.php {} \;

- но не работает :(
...
Рейтинг: 0 / 0
07.02.2012, 08:57
    #37649637
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как на CentOS заменить все фаилы с одним названием ?
werter2,

>не работает

Что именно не работает - не находит файлы, нет прав на запись, на чтение, выдает каие-то ошибки, что-то другое?

PS: По хорошему, в find нужно добавить ключик -type f, чтобы искать только файлы.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
07.02.2012, 09:53
    #37649680
Rv40
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как на CentOS заменить все фаилы с одним названием ?
а сотни одинаковых файлов должны в итоге в 1 превратиться?

Может попробовать так?:
perl -e 'foreach $file (`find /var/www/html/хххххх.com/sub/ -name 11111aa.html`) {`cp $file ...`};'
...
Рейтинг: 0 / 0
07.02.2012, 11:02
    #37649793
werter2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как на CentOS заменить все фаилы с одним названием ?
делаю так : find /var/www/html/хххххх.com/sub/ -name 11111aa.html | while read f; do cp /var/www/html/index.html $f; done

отрабатывает , никаких ошибок не выдает .
но ничего и не заменяет

права на файлах 666
...
Рейтинг: 0 / 0
07.02.2012, 11:07
    #37649800
werter2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как на CentOS заменить все фаилы с одним названием ?
Rv40а сотни одинаковых файлов должны в итоге в 1 превратиться?

Может попробовать так?:
perl -e 'foreach $file (`find /var/www/html/хххххх.com/sub/ -name 11111aa.html`) {`cp $file ...`};'

да , просто нужно обновить шаблон который во многих местах используется.

через перл выдает ошибку :

-sh-3.2# perl -e 'foreach $file (`find /var/www/html/xxxxx.com/sub/ -name 11111aa.html`) {`cp $file /var/www/index.html`};'
cp: missing destination file operand after `/var/www/html/xxxxx.com/sub/11111aa.html'
Try `cp --help' for more information.
...
Рейтинг: 0 / 0
07.02.2012, 12:15
    #37649910
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как на CentOS заменить все фаилы с одним названием ?
On 02/07/2012 06:16 AM, werter2 wrote:

> пробовал так : -sh-3.2# find /var/www/html/хххххх.com/sub/ -name 11111aa.html
> -exec cp /var/www/newTemplate/index.php {} \;

find /var/www/html/хххххх.com/sub/ -type f -name 11111aa.html -print0 | xargs -0
-I "{}" cp /var/www/newTemplate/index.php "{}"


Для начала только проверь, что только нужные файлы будут под замену идти, так:
find /var/www/html/хххххх.com/sub/ -type f -name 11111aa.html -print
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
07.02.2012, 12:32
    #37649950
Rv40
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как на CentOS заменить все фаилы с одним названием ?
werter2да , просто нужно обновить шаблон который во многих местах используется.


Тьфу, наоборот тебе надо делать :) Сорри. Шаблон (index.php) копировать во все места, где он используется (вывод команды find)?

тогда так:

Код: php
1.
perl -e 'foreach $file (`find /var/www/html/хххххх.com/sub/ -name 11111aa.html` -type f`) {system("cp /var/www/newTemplate/index.php $file")};'



Только уверен, что в самом php есть более правильный инструмент для использования одного шаблона в разных местах.
...
Рейтинг: 0 / 0
07.02.2012, 12:39
    #37649969
werter2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как на CentOS заменить все фаилы с одним названием ?
find /var/www/html/xxxxxx.com/sub/ -type f -name 11111aa.html -print0 | xargs -0 -I "{}" cp /var/www/html/index.html "{}"

отрабатывает без ошибок ... но файлы не меняет (

пробовал
-sh-3.2# find /var/www/html/xxxxx.com/sub/ -type f -name 11111aa.html -print
список файлов подлежащих замене печатает нормально
...
Рейтинг: 0 / 0
07.02.2012, 15:04
    #37650251
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как на CentOS заменить все фаилы с одним названием ?
Rv40,

>уверен, что в самом php есть более правильный инструмент для
>использования одного шаблона в разных местах.

Ага, только разработчик должен хотя бы знать о существовании такого инструмента )))
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
07.02.2012, 15:20
    #37650274
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как на CentOS заменить все фаилы с одним названием ?
On 02/07/2012 01:39 PM, werter2 wrote:
> find /var/www/html/xxxxxx.com/sub/ -type f -name 11111aa.html -print0 | xargs -0
> -I "{}" cp /var/www/html/index.html "{}"
>
> отрабатывает без ошибок ... но файлы не меняет

Ну ищи ошибку.

выполни

find /var/www/html/xxxxxx.com/sub/ -type f -name 11111aa.html -print0 | xargs -0
-I "{}" echo cp /var/www/html/index.html "{}"

возми одну комманду получившуюся,
попробуй выполнить, смотри, что не так, найдёшь -- измени в общей комманде и
т.п.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / как на CentOS заменить все фаилы с одним названием ? / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]