PDA

View Full Version : FTP - LS-Kommando mit (DISK Parameter



Seiten : [1] 2

plinzen
31-10-07, 07:35
Guten Morgen,

ich versuche soeben folgendes Problem zu lösen:
Wir sollen von einem FTP-Server Dateien in regelmäßigen Abständen abholen. Nachdem eine Datei runtergeladen wurde muss sie auf dem FTP-Server in einen anderen Ordner verschoben werden (damit ich sie nicht doppelt verarbeite).

Ich hab mir das nun folgendermaßen vorgestellt:
Ich lass mir mit dem Kommando

LS (DISK
den Verzeichnisinhalt in eine Datei ausgeben.

Dann arbeite ich diese Datei ab. So hab ich im Programm volle Kontrolle darüber, welche Datei ich jetzt verarbeiten will und wohin ich sie schieben will. :) Als Alternative habe ich an den MGET-Befehl gedacht, nur weiß ich da nicht, welche Dateien ich herrunterlade und dementsprechen verschieben muss.

Ok, soweit so gut. Mein Problem ist allerdings, dass der LS-Befehl die Ausgabe in eine Datei *CURLIB/LSOUTPUT.LSOUTPUT schreibt. Ich würde das gerne Ändern, sodass anstatt der *CURLIB die QTEMP verwendet. Kann man das irgendwie anpassen oder muss hierfür ein CHGCURLIB herhalten?

Irgendwelche Erfahrungen?

Vielen Dank!
Gruß Plinzen

jajonowak
31-10-07, 07:49
guten morgen plinzen,

hast du mal ausprobiert vorher einen lcd bibliothek abzusetzen?

lg
Hans-Joachim

plinzen
31-10-07, 07:58
Nein, das klappt leider nicht. Es wird trotzdem in die *CURLIB geschrieben.

Ich vermute ja fast, das es nicht geht. Aber wer weiß... ;)

BenderD
31-10-07, 08:26
Hallo,

normalerweise sollte das ein OVRDBF schaffen (eventuelle muss man die Datei vorher anlegen), zu dem Design sage ich makl nix, das könnte man vielleicht auch anders machen...

mfg

Dieter Bender


Guten Morgen,

ich versuche soeben folgendes Problem zu lösen:
Wir sollen von einem FTP-Server Dateien in regelmäßigen Abständen abholen. Nachdem eine Datei runtergeladen wurde muss sie auf dem FTP-Server in einen anderen Ordner verschoben werden (damit ich sie nicht doppelt verarbeite).

Ich hab mir das nun folgendermaßen vorgestellt:
Ich lass mir mit dem Kommando

LS (DISK
den Verzeichnisinhalt in eine Datei ausgeben.

Dann arbeite ich diese Datei ab. So hab ich im Programm volle Kontrolle darüber, welche Datei ich jetzt verarbeiten will und wohin ich sie schieben will. :) Als Alternative habe ich an den MGET-Befehl gedacht, nur weiß ich da nicht, welche Dateien ich herrunterlade und dementsprechen verschieben muss.

Ok, soweit so gut. Mein Problem ist allerdings, dass der LS-Befehl die Ausgabe in eine Datei *CURLIB/LSOUTPUT.LSOUTPUT schreibt. Ich würde das gerne Ändern, sodass anstatt der *CURLIB die QTEMP verwendet. Kann man das irgendwie anpassen oder muss hierfür ein CHGCURLIB herhalten?

Irgendwelche Erfahrungen?

Vielen Dank!
Gruß Plinzen

plinzen
31-10-07, 08:46
Hmm, ja an den OVRDBF hab ich noch gar nicht gedacht!
Danke!

Nur rein aus Interesse, wie könnte man das noch handhaben?

Gruß Plinzen

AS400.lehrling
31-10-07, 08:51
Hallo,

normalerweise sollte das ein OVRDBF schaffen (eventuelle muss man die Datei vorher anlegen), zu dem Design sage ich makl nix, das könnte man vielleicht auch anders machen...

mfg

Dieter Bender

Denkst du an CL RPG oder SQL :confused:

Gruß AS400.lehrling

BenderD
31-10-07, 08:53
naja, ich habe mich schon öfter geoutet, das ich kein Anhänger des HKGPs (Haufenkacker Graber Prinzip) bin, aber manchmal hat man das nich alleine in der Hand: ich würde den Informationsfluss möglichst vorwärts gerichtet machen: wer eine Datei erstellt, stößt die Folgeverarbeitung an (Message etwa) und sagt präzise was zu verarbeiten ist...


Hmm, ja an den OVRDBF hab ich noch gar nicht gedacht!
Danke!

Nur rein aus Interesse, wie könnte man das noch handhaben?

Gruß Plinzen

kuempi von stein
31-10-07, 09:24
Hello,

also vor dem FTP ein lockeres


OVRDBF FILE(INPUT) TOFILE(MEINELIB/QCLSRC) +
MBR(MEINMBR)
OVRDBF FILE(OUTPUT) TOFILE(MEINELIB/QCLSRC) +
MBR(MEINMBR)

und der Output des LS landet in der OUTPUTFILE.
Funktioniert super bei mir.

Reicht auch, nur die OUTPUTDatei zu überschreiben, dann eben die FTP-Commands wie bisher absetzen..

kuempi

Fuerchau
31-10-07, 10:38
Alles nur teilweise richtig.
Folgendes funktioniert bei mir jedenfalls ganz einfach:

ls >/qsys.lib/mylib.lib/myfile.file/myfile.mbr

Die OVR's bestimmen nur die Standardein-/-ausgabe des FTP's.

BenderD
31-10-07, 11:15
der OVRDBF auf LSOUTPUT sollte es wohl auch tun! wenn man natürlich die falsche Datei überschreibt, passiert wenig...


Alles nur teilweise richtig.
Folgendes funktioniert bei mir jedenfalls ganz einfach:

ls >/qsys.lib/mylib.lib/myfile.file/myfile.mbr

Die OVR's bestimmen nur die Standardein-/-ausgabe des FTP's.