Ftp download updated files

Dobio sam zadatak da saznam ako je moguce uraditi sledece:

Na ftp server cesto stizu neki pdf fajlici. Korisnici imaju klijentski pristup ftp-u. Ja nemam nikakav tako da je instaliranje bilo cega na server iskljuceno. Kako stizu cesto novi fajlovi, neki korisnici bi htjeli da na svoj lokalni disk skinu te nove fajlove (i stare koji su overwrited novima). Trebalo bi napraviti nesto sto radi monitoring i skida samo od trenutka startanja monitoringa. Postoji li tako nesto? Ili neku sinhronizaciju napraviti sa klijentom pa da stalno ima sve fajlove (i stare i nove). Ali opet odredjenog foldera. Klijenti su windows racunari. Ili postoji li FTP client koji se ponasa kao mirror?

Koliko znam lftp i wget oba imaju mirror funkciju, postavis ih u cron, cca. svako sat vremena i radice mirror. Mada bih preporucio rsync za tako nesto.

Windows client je. I da gledao sam filezilla i winscp ali nista ne mogu naci a da se mogu odabrati folderi koje hoces da skidas. I naravno da ne radi sinhronizaciju na drugu stranu, tj. na server.

http://gnuwin32.sourceforge.net/packages/wget.htm

-m
--mirror
    Turn on options suitable for mirroring.  This option turns on
    recursion and time-stamping, sets infinite recursion depth and
    keeps FTP directory listings.  It is currently equivalent to 
    -r -N -l inf --no-remove-listing.

Nisam vidjeo u manualu za wget da se mogu npr odabrati samo odredjeni folderi iz nekog nad foldera. Recimo ako neki folder sadrzi 40 pod foldera a ja hocu samo njih 20, kako bih to uradio sa wget-om?

.bat skripta ?

http://www.msfn.org/board/topic/47265-making-arrays-in-batch/

Bilo sta… pitanja ti bjeze od programerske logike i inzinjerskog pristupa resavanju problema…

Bjeze li ili ne, pokusavam naci (po mogucnosti GUI) rjesenje jer necu ja koristiti taj program. I da, mislio sam vec na bat skriptu. Vjerovatno ce to biti rjesenje.

Za sada sam napravio listu tipa ftp://sever.com/neki_folder i tu listu pozivam wget-om. wget-u sam dodao paramater -m da se ponasa kao mirror sto mi zapravo i treba. Za sada je rjesenje ok ali ce se morati naci jos nesto bolje.

Sve se moze kad se ima manual:

http://www.gnu.org/software/wget/manual/wget.html#Recursive-Retrieval-Options

‘-r’
‘--recursive’
    Turn on recursive retrieving. See Recursive Download, for more details. The default maximum depth is 5. 

‘-l depth’
‘--level=depth’
    Specify recursion maximum depth level depth (see Recursive Download).

Ne znam kako zamišljaš da wget čita tvoje misli i zna kojih 20 od 40 foldera izabrati, znači moraš imati neki spisak, taj spisak se zove .bat fajl…

Ljudi, ok, hvala tako sam i uradio. I citao sam manual -r -l i jos nesto mijenja -m (mirror). Skriptu sam napravio koja cita fajl koji sadrzi listu foldera - to je ok. Nego kad kazem “drugo rjesenje”, to ce trebati za jedan slican zadatak. Kad se skinu ti fajlovi na local onda ce trebati napisati neki GUI program koji ce sad iz tog svega (sa lokala) uzimati samo sto je novije od zadanog vremena i to pakovati u zip i zatim posalti na trecu stranu.

Hvala, ovo za sada radi.