2017-04-25 114 views
-1

我想通过使用Java的ftpscript.bat文件下载一些文件。Ftp脚本文件错误

该文件中的脚本如下。

open 122.22.11.111 Tempuser Temppass get 'TEMPDATA.TEXT.INPUT' bye

代码工作以及在C盘。但是这在D盘的任何位置都会出现错误。

错误打开脚本文件script.bat.向运行FTP服务器服务(有时称为守护程序)的计算机传输文件。 Ftp可以交互式使用.FTP [-v] [-d] [-i] [-n] [-g] ...

我想在java中使用ProcessBuilder访问脚本文件。

path = "D:\MyFiles" 

ProcessBuilder builder = new ProcessBuilder("cmd.exe", "/c", "cd \"" + path + "\" && ftp -s:ftpscript.bat"); 
+0

'的ProcessBuilder( “mycommand的”, “myArg1”,“myArg2 “);'见https://docs.oracle.com/javase/7/docs/api/java/lang/ProcessBuilder.html – avrono

回答

0

首先,使用Java库进行FTP。不要驱动外部控制台应用程序!见How to download file from FTP using Java?


无论如何,你的问题是,cd D:\MyFiles不会改变驱动器,你必须使用

cd /D D:\MyFiles 

Using cd command in Windows command line, can't navigate to D:

+0

感谢您的输入。但它仍然没有工作。 C:\> cd/D D:\ MyFiles&FTP -S:SCRIPT.BAT 将文件传输到运行FTP服务器服务的计算机 (有时称为守护进程)。 Ftp可以交互使用。 – Amresh

+0

这是'-s'(就像你在你的问题中),而不是'-S' –

+0

它运作良好!非常感谢兄弟。 – Amresh