Thread View: pl.comp.lang.perl
2 messages
2 total messages
Started by Robert M. Czerwinski
Tue, 24 Jun 1997 01:08
Czyszczenie mojego archiwum :(
Author: Robert M. Czerwinski
Date: Tue, 24 Jun 1997 01:08
Date: Tue, 24 Jun 1997 01:08
45 lines
2648 bytes
2648 bytes
Vtam,
Niestety nie moge sobie poradzic z chyba dosc prostym ( niestety )
zadaniem :(.
Administruje archiwum ulokowanum na UNIXie ( SunSITE ) a zarzadzanym z PC
( generator html itp ). Problem jest taki, ze ludzie czesto zmieniaja nazwy
swoich plikow, tak ze w moim archiwum pojawiaja sie "martwe" pliki, ktore
nie maja opisu na stronach html i powinny byc usuniete. Lista wszystkich
plikow jakie POWINNY byc w moim archiwum jest dostepna na UNIXie (
wykozystywana przez search engine napisany w perlu ), a wyglada mniej
wiecej tak
nazwa_pliku^katalog^co_tam^cos_tam^ ....
( posortowane w/g nazw plikow, a nie katalogow - jakby sie ktos pytal )
problem polega na tym, ze jestem w stanie ( no, no, ale bystrzacha ;) )
zrobic dwie listy:
@powinno wczytane z opisanego pliku
@jest lista zrobiona przez find
"algorytm" czyszczenia jest silowy: w petli dla kazdego pliku z
@powinno jest sprawdzana lista @jest ( tez w peli foreach - moze da sie
to jakos prosciej ? ). W przypadku jesli element z listy @powinno odpowiada
elementowi z listy @jest to te oba elementy powinny byc ze swoich list
usuniete. Niby proste, ale jak usuwac|nie usuwac elementy z listy, gdy
dostep do elementow jest przez foreach $one_file ( @powinno ) { }
Poza tym, taka petla w petli da od diaska operacji :(
Po takiej operacji w listach powinno mi zostac:
@powinno : nic, jak cos jest to sa jakies niewlasciwe wpisy
@jest : to co do skasowania
Dzieki z gory za wszelkie uwagi, sugestie ( no poza gon sie, albo cos
podobnego :) )
Pozdawiam,
Robert
--
==============================================================
Robert M. Czerwinski mail: robert@asp.biogeo.uw.edu.pl
Warsaw University/Poland
Visit my Delphi Super Page: http://sunsite.icm.edu.pl/delphi/
==============================================================
Re: Czyszczenie mojego archiwum :(
Author: Wladyslaw A. Russocki
Date: Tue, 24 Jun 1997 14:01
Date: Tue, 24 Jun 1997 14:01
56 lines
2933 bytes
2933 bytes
Robert M. Czerwinski wrote:
>
> Vtam,
>
> Niestety nie moge sobie poradzic z chyba dosc prostym ( niestety )
> zadaniem :(.
> Administruje archiwum ulokowanum na UNIXie ( SunSITE ) a zarzadzanym z PC
> ( generator html itp ). Problem jest taki, ze ludzie czesto zmieniaja nazwy
> swoich plikow, tak ze w moim archiwum pojawiaja sie "martwe" pliki, ktore
> nie maja opisu na stronach html i powinny byc usuniete. Lista wszystkich
> plikow jakie POWINNY byc w moim archiwum jest dostepna na UNIXie (
> wykozystywana przez search engine napisany w perlu ), a wyglada mniej
> wiecej tak
> nazwa_pliku^katalog^co_tam^cos_tam^ ....
> ( posortowane w/g nazw plikow, a nie katalogow - jakby sie ktos pytal )
>
> problem polega na tym, ze jestem w stanie ( no, no, ale bystrzacha ;) )
> zrobic dwie listy:
> @powinno wczytane z opisanego pliku
> @jest lista zrobiona przez find
>
> "algorytm" czyszczenia jest silowy: w petli dla kazdego pliku z
> @powinno jest sprawdzana lista @jest ( tez w peli foreach - moze da sie
> to jakos prosciej ? ). W przypadku jesli element z listy @powinno odpowiada
> elementowi z listy @jest to te oba elementy powinny byc ze swoich list
> usuniete. Niby proste, ale jak usuwac|nie usuwac elementy z listy, gdy
> dostep do elementow jest przez foreach $one_file ( @powinno ) { }
> Poza tym, taka petla w petli da od diaska operacji :(
>
> Po takiej operacji w listach powinno mi zostac:
> @powinno : nic, jak cos jest to sa jakies niewlasciwe wpisy
> @jest : to co do skasowania
Hello,
W pierwszym wydaniu "Programming Perl" (Camel book), w rozdziale no. 6,
znajduje sie podrozdzial: "Computing the difference of two arrays".
Oto zamieszczony w nim program:
------------------------------------------------------------
@rollerskaters=('adam','dale','loredana','merlyn','vicki');
@pilots=('geoff','jim','merlyn','rick');
local(%mark);
grep($mark{$_}++,@rollerskaters);
@nonskatingpilots=grep(!$mark{$_},@pilots);
print "@nonskatingpilots\n";
------------------------------------------------------------
Warto tez przeczytac artykul o listach w "Unix Review" z listopada 1996:
http://www.teleport.com/~merlyn/UnixReview
Zycze powodzenia
Wladyslaw Russocki
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads