Hallo alle miteinander,
ich arbeite gerade an einem Programm, das Dateien von einem Windows Rechner auf einen LINUX Rechner kopieren soll. Das mache ich mit PSCP.
Der Programmaufruf sieht folgendermaßen aus:
String progCall = "C:/Programme/PuTTY/pscp -2 -i C:/Programme/PuTTY/keys/entwicklPrivateKey.ppk C:\Programme\CopyClient\export\Doc5.tif [email protected]:/transfer/";
Und der Quellcode dazu sieht so aus:
Process proc = Runtime.getRuntime().exec(progCall);
proc.waitFor();
int exitCode = proc.exitValue();
if (exitCode == 0)
this.logger.debug("PSCP erfolgreich. RC=" + proc.exitValue());
else {
this.logger.error("PSCP fehlgeschlagen. RC=" + proc.exitValue());
return false;
}
Kleine Dateien werden ganz prima kopiert. Wenn ich aber größere Dateien anbiete ( > 30MB) dann bleibt PSCP bei ca. 25 MB - 30 MB hängen. Breche ich mein Programm aber während es noch so auf das Ende von PSCP wartet ab, dann schreibt PSCP den Rest der Datei auch noch raus.
Von wem und warum wird PSCP da angehalten? Wie kann ich das unterbinden?
ich arbeite gerade an einem Programm, das Dateien von einem Windows Rechner auf einen LINUX Rechner kopieren soll. Das mache ich mit PSCP.
Der Programmaufruf sieht folgendermaßen aus:
String progCall = "C:/Programme/PuTTY/pscp -2 -i C:/Programme/PuTTY/keys/entwicklPrivateKey.ppk C:\Programme\CopyClient\export\Doc5.tif [email protected]:/transfer/";
Und der Quellcode dazu sieht so aus:
Process proc = Runtime.getRuntime().exec(progCall);
proc.waitFor();
int exitCode = proc.exitValue();
if (exitCode == 0)
this.logger.debug("PSCP erfolgreich. RC=" + proc.exitValue());
else {
this.logger.error("PSCP fehlgeschlagen. RC=" + proc.exitValue());
return false;
}
Kleine Dateien werden ganz prima kopiert. Wenn ich aber größere Dateien anbiete ( > 30MB) dann bleibt PSCP bei ca. 25 MB - 30 MB hängen. Breche ich mein Programm aber während es noch so auf das Ende von PSCP wartet ab, dann schreibt PSCP den Rest der Datei auch noch raus.
Von wem und warum wird PSCP da angehalten? Wie kann ich das unterbinden?
Comment