PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : FTP get / delete



noway
04.06.02, 09:10
Hallo,
ich suche einen FTP befehl der eine Datei vom server holt und sie direkt löscht.

Grund ist das ich ein Script namens openftp habe :

#!/usr/bin/bash
open xxx.xxx.xxx.xxx
user username Passwort
prom
lcd /home
mget *.*


dieses stosse ich mit ftp -n -v < openftp.

Bis hier her klappt alles die daten werden auch geholt. Nun soll er sie direkt löschen. ICh dachte erst delete *.xml.
Leider geht das nicht aus zwei gründen. Wenn ein user in der Zeit eine Datei aufspielt die noch nicht abgeholt wurde ist die auch weg.
und zweitens Permission denied.

Hat jemannd einen Tip oder einen anderen FTP clienten der das kann ?


Gruß Klaus

howlcoyote
04.06.02, 10:02
Ich empfehle Dir ncftp von http://www.ncftpd.com/ncftp/

Aber was bedeutet denn Permission denied? *hehe* Das hört sich an, als ob ein anderer FTP-Client nichts ändern würde ;)

Im Script empfehle ich Dir eine Schleife, die immer eine Datei holt und diese auch gleich löscht. Dann die nächste Datei holt und löscht usw...

noway
04.06.02, 12:55
Hi,
Ncftpget hatte ich schon probiert.
Bei mir es es daran gescheitert das der ftpserver den pfad nicht akzeptierte.

monty:/ # ncftpget -f /root/openftp_c -d -R -DD /meinlocalerpfad /d:/kunden/ordner/
Remote server is running Serv-U FTP-Server.
220: Serv-U FTP-Server v2.5a for WinSock ready...
Connected to 2XX.162.51.xxx.
Cmd: USER xxxxx
331: User name okay, need password.
Cmd: PASS xxxxxxxx
230: User logged in, proceed.
Cmd: PWD
257: "/d:/kunden/ORDNER" is current directory.
Logged in to 212.162.51.148 as westlbpanmure.
Cmd: FEAT
500: 'FEAT': command not understood.
Cmd: CLNT NcFTPGet 3.0.2
500: 'CLNT': command not understood.
Cmd: TYPE I
200: Type set to I.
Cmd: SIZE /d:/kunden/ORDNER
550: Permission denied.
Cmd: REST 1
350: Restarting at 1 - send STORE or RETRIEVE to initiate transfer.
Cmd: REST 0
350: Restarting at 0 - send STORE or RETRIEVE to initiate transfer.
Cannot open local file /LOCALERPFAD for writing: Is a directory.
ncftpget /d:/kunden/ORDNER7: could not open file.
Cmd: QUIT
221: Goodbye!


Gruß Klaus

slime
04.06.02, 16:59
falls du ein wenig ahnung von perl hast kannst du ja mal mit der lib Net::FTP ein einfaches perl-prog schreiben das dir das alles macht.
ist net wirklich schwierig, hab sich sogar hinbekommen

noway
05.06.02, 09:21
Hi, ne so richtig ahnung von Perl ha ich nicht.
Wäre es möglich wenn du mir deins mal schickst damit ich
mir das mal anschauen kann ?

Gruß Klaus

slime
05.06.02, 16:48
hab mal ein script angehängt das net::ftp benutzt,,
die funktion von den script muss man net verstehn ist nen speziallösung,

trotzdem sollte es den überblick verschaffen wie man das modul benutzt
und perldoc gibts ja auch noch *g*

Dewitt
05.06.02, 18:23
Original geschrieben von noway
mget *.*

...
Bis hier her klappt alles die daten werden auch geholt. Nun soll er sie direkt löschen. ICh dachte erst delete *.xml.


ftp> help mdele
mdelete delete multiple files
ftp>

"mdele *" sollte das sein, was du suchst.