- PR -

【Jakarta commons-net】FTP:MDELETEコマンドの実行

1
投稿者投稿内容
がちゃぴん
会議室デビュー日: 2002/02/06
投稿数: 19
お住まい・勤務地: 東京都・いろいろ
投稿日時: 2005-07-19 19:46
こんにちは、がちゃぴんです。
Jakarta Commons-net のAPIを使用して、FTP送受信を行う
Javaプログラム(Javaアプリケーション)のテストを行っています。

基本的な送受信はできるのですが、タイトルの通りmdeleteコマンドを
実行することができません。
元々、mdeleteコマンドを実行するためにどのメソッドを使用したらいいかも
分からなかったので、様々なメソッドで実行して通常のdeleコマンドが実行できた
FTP#sendCommand()で試しましたが、どれも結果は
「500 command not understood(コマンドの文法エラー)」になります。

Commons-net API では、mdeleteコマンドには対応していないのでしょうか?
情報をお持ちの方がいらっしゃいましたら、ご回答の程、よろしくお願いします。


【環境】
 JDK:j2sdk1.4.2_08
 TOOL:ECLIPSE3.0.1
commons-net-1.2.2.jar
OS:Windows2000 SP4
 FTP Server OS:Windows

【コード】
コード:
// FTPクライアントを生成する。
FTPClient ftpclient = new FTPClient();

// 接続や途中は割愛
int ret = ftpclient.sendCommand( "mdelete *.dat" );

// sendCommandは引数によりいくつかメソッドがあったので試してみたが結果は同じでした。
// int ret = ftpclient.sendCommand( "mdelete", "*.dat" ); 

String reply = ftpclient.getReplyString();
System.out.println( "mdelete ret=" + ret + " reply="+reply );



【Jakarta Commons-net API CLASS FTPClient】
http://jakarta.apache.org/commons/net/api/
a-san
常連さん
会議室デビュー日: 2004/03/15
投稿数: 30
投稿日時: 2005-07-19 20:36
sendCommand()に渡すのは、RETR, STOR, DELEなどのFTPコマンドです。
ftpで入力しているget, put, deleteなどのコマンドとは別です。
mdelete というコマンドはありません。
FTPのコマンドについてはRFC等を参照してください。
がちゃぴん
会議室デビュー日: 2002/02/06
投稿数: 19
お住まい・勤務地: 東京都・いろいろ
投稿日時: 2005-07-20 10:18
がちゃぴんです。

ご回答ありがとうございます。
RFCを見ました。確かにmdeleteというコマンドはありませんでした。
となると、mdeleteのようなことをしたいとなると、
ファイルリストを引っ張ってきて、削除対象に該当するファイルを
見つけて削除するループ処理を自作するということですね。


引用:

a-sanさんの書き込み (2005-07-19 20:36) より:
sendCommand()に渡すのは、RETR, STOR, DELEなどのFTPコマンドです。
ftpで入力しているget, put, deleteなどのコマンドとは別です。
mdelete というコマンドはありません。
FTPのコマンドについてはRFC等を参照してください。


1

スキルアップ/キャリアアップ(JOB@IT)