Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : ‘ҐаЈҐ©                               2:5020/400     09 Mar 2007  09:32:31
 To : Artem Chuprina
 Subject : Re: Про копирования каталогов...
 -------------------------------------------------------------------------------- 
 
 Привет...
 
 Artem Chuprina пишет:
 
 AC> Sergey  @ Wed, 7 Mar 2007 05:16:01 +0000 (UTC):
 
 AC>  S> Привет...
 
 AC>  S> Подскажите плиииз, правильно ли я делаю...
 
 Исключения копирования каталогов
 
 AC>  S> (перечисленных в файле) из корня в другое
 
 место...
 
 AC>  S> Есть файлы с перечислением построчно
 
 каталогов, которые не надо
 
 AC>  S> копировать. Hазвания файлов совпадают с
 
 именем сервера, если его нет, то
 
 AC>  S> default файл. И вот что получилось
 AC>  S> --------------------
 AC>  S> #!/usr/bin/perl -w
 AC>  S> $ETC = "/usr/local/etc/dir"
 AC>  S> $SERVER=split(/,/, $ARGV[0]);
 AC>  S> $SERVER =~ tr/a-z/A-Z/;
 AC>  S> $fromdir="/tmp/fromdir";
 AC>  S> $outdir="/tmp/outdir";
 AC>  S> $CP="bin/cp";
 
 AC>  S> sub COPY_DIR
 AC>  S> {
 AC>  S> my (@strs,$str,@dirs,$dir);
 
 AC>  S> if ( -e $ETC/$SERVER\.excl)
 AC>  S> {
 AC>  S> open (EXC, "$ETC/$SERVER\.excl);
 AC>  S> }
 AC>  S> else
 AC>  S> {
 AC>  S> open (EXC, "$ETC/default\.excl");
 AC>  S> }
 AC>  S> while ( $exc = <EXC> )
 AC>  S> {
 AC>  S> chop;
 AC>  S> opendir (D, $fromdir) or warn "Cannot open
 
 $fromdir: !" and next;
 
 AC>  S> @dirs=grep {!(/^\./) && "$fromdir/$_"}
 
 readdir D;
 
 AC>  S> rewinddir D;
 AC>  S> foreach $dir (@dirs)
 AC>  S> {
 AC>  S> if ( -d ($dir ne $exc))
 AC>  S> {
 AC>  S> @strs=`($CP -pR -- $fromdir/$dir
 
 "$outdir") &2>1`;
 
 AC>  S> foreach $str (@strs)
 AC>  S> {
 AC>  S> &Log(2,"$str");
 AC>  S> }
 AC>  S> closedir D;
 AC>  S> }
 AC>  S> close EXC;
 AC>  S> }
 AC>  S> -------------------------------
 AC>  S> Подскажите плииз , что где не так... Или
 
 как может быть решить такую задачу
 
 AC>  S> попроще, с помощью регекспов???
 AC>  S> Буду благодарен любой посдсказке....
 
 AC> Если я правильно понял сходу, то не на первой
 
 итерации while не будет
 
 AC> скопировано только то, что нарисовано в первой
 
 строчке EXC, но оно
 
 AC> успешно будет скопировано на второй.
 
 AC> А правильно будет сначала зачитать весь EXC, а
 
 потом уже открывать
 
 AC> директорию, и проверять по всему списку.
 
 Так я вроде так и делаю... Если неправ, то
 поправьте меня плииз...
 Hо меня больше вот эта конструкция интересует....
 С копируются ли все имена из каталога $fromdir в
 @dirs и будут ли они сравниваться с EXC ???
 --------
 ......
 opendir (D, $fromdir) or warn "Cannot open
 $fromdir: !" and next;
 @dirs=grep {!(/^\./) && "$fromdir/$_"} readdir D;
 rewinddir D;
 foreach $dir (@dirs)
 {
 if ( -d ($dir ne $exc))
 {
 @strs=`($CP -pR -- $fromdir/$dir "$outdir") &2>1`;
 foreach $str (@strs)
 ......
 --------------
 
 AC> А ну и кроме того, сильно подозреваю, что
 
 ($dir ne $exc) дает результат,
 
 AC> к которому бессмысленно применять -d.  Hу а
 
 что количество открывающих
 
 AC> фигурных скобок не соответствует количеству
 
 закрывающих, тебе сам perl
 
 AC> расскажет...
 
 Правда ваша поправил я все :)...
 --------------
 С уважением Сергей
 -- 
 Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru
 --- ifmail v.2.15dev5.3
  * Origin: Talk.ru (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Про копирования каталогов...   Sergey   07 Mar 2007 09:16:01 
 Re: Про копирования каталогов...   Artem Chuprina   07 Mar 2007 17:31:54 
 Re: Про копирования каталогов...   ‘ҐаЈҐ©   09 Mar 2007 09:32:31 
 Re: Про копирования каталогов...   ‘ҐаЈҐ©   09 Mar 2007 11:53:16 
 Re: Про копирования каталогов...   Artem Chuprina   11 Mar 2007 02:31:15 
 Re: Про копирования каталогов...   Sergey   13 Mar 2007 16:13:09 
 Re: Про копирования каталогов...   Serge Chervjakov   13 Mar 2007 21:16:16 
 Re: Про копирования каталогов...   Sergey   14 Mar 2007 15:41:55 
 Re: Про копирования каталогов...   Artem Chuprina   14 Mar 2007 18:03:48 
 Re: Про копирования каталогов...   Serge Chervjakov   14 Mar 2007 19:11:24 
 Re: Про копирования каталогов...   Artem Chuprina   14 Mar 2007 21:28:18 
 Про копирования каталогов...   Alexey Zhidkov   24 Mar 2007 21:07:12 
 Moderatorial [+] (was: Про копирования каталогов...)   Moderator of RU.PERL   24 Mar 2007 17:01:51 
 Re: Про копирования каталогов...   ‘ҐаЈҐ©   15 Mar 2007 11:07:14 
 Re: Про копирования каталогов...   Artem Chuprina   15 Mar 2007 13:23:38 
 Re: Про копирования каталогов...   Sergey   19 Mar 2007 12:02:58 
 Re: Про копирования каталогов...   Artem Chuprina   19 Mar 2007 14:06:31 
 Про копирования каталогов...   Alexey Zhidkov   24 Mar 2007 17:42:29 
Архивное /ru.perl/648889bc6b6b.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional