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


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Artem Chuprina                       2:5020/400     07 Mar 2007  17:31:54
 To : Sergey
 Subject : Re: Про копирования каталогов...
 -------------------------------------------------------------------------------- 
 
 Sergey  @ Wed, 7 Mar 2007 05:16:01 +0000 (UTC):
 
  S> Привет...
 
  S> Подскажите плиииз, правильно ли я делаю... Исключения копирования каталогов
  S> (перечисленных в файле) из корня в другое место...
  S> Есть файлы с перечислением построчно каталогов, которые не надо
  S> копировать. Hазвания файлов совпадают с именем сервера, если его нет, то
  S> default файл. И вот что получилось
  S> --------------------
  S> #!/usr/bin/perl -w
  S> $ETC = "/usr/local/etc/dir"
  S> $SERVER=split(/,/, $ARGV[0]);
  S> $SERVER =~ tr/a-z/A-Z/;
  S> $fromdir="/tmp/fromdir";
  S> $outdir="/tmp/outdir";
  S> $CP="bin/cp";
 
  S> sub COPY_DIR
  S> {
  S> my (@strs,$str,@dirs,$dir);
 
  S> if ( -e $ETC/$SERVER\.excl)
  S> {
  S> open (EXC, "$ETC/$SERVER\.excl);
  S> }
  S> else
  S> {
  S> open (EXC, "$ETC/default\.excl");
  S> }
  S> while ( $exc = <EXC> )
  S> {
  S> chop;
  S> opendir (D, $fromdir) or warn "Cannot open $fromdir: !" and next;
  S> @dirs=grep {!(/^\./) && "$fromdir/$_"} readdir D;
  S> rewinddir D;
  S> foreach $dir (@dirs)
  S> {
  S> if ( -d ($dir ne $exc))
  S> {
  S> @strs=`($CP -pR -- $fromdir/$dir "$outdir") &2>1`;
  S> foreach $str (@strs)
  S> {
  S> &Log(2,"$str");
  S> }
  S> closedir D;
  S> }
  S> close EXC;
  S> }
  S> -------------------------------
  S> Подскажите плииз , что где не так... Или как может быть решить такую задачу
  S> попроще, с помощью регекспов???
  S> Буду благодарен любой посдсказке....
  S> ---------------------------
  S> С уважением Сергей
 
 Если я правильно понял сходу, то не на первой итерации while не будет
 скопировано только то, что нарисовано в первой строчке EXC, но оно
 успешно будет скопировано на второй.
 
 А правильно будет сначала зачитать весь EXC, а потом уже открывать
 директорию, и проверять по всему списку.
 
 А ну и кроме того, сильно подозреваю, что ($dir ne $exc) дает результат,
 к которому бессмысленно применять -d.  Hу а что количество открывающих
 фигурных скобок не соответствует количеству закрывающих, тебе сам perl
 расскажет...
 
 -- 
 Artem Chuprina
 RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru
 
 Штатными средствами среды я могу пририсовать "документу" оглавление,
 обсуждение, усы и бороду
   (c) Бо Беркгаут
 --- ifmail v.2.15dev5.3
  * Origin: Leninsky 45 home network (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/25606ef6ebd81.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional