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