|
はじめまして。 68user様のPerlでFTPクライアントを作るページを参考にさせていただき、 FTP転送するプログラムを書いたりしています。 その中でFTPコマンドの NLST のレスポンスで 550 が返ってくるかどうかで ファイル存在チェックなどしたりしているのですが、 最近、OSをLinuxのRedHat7JからRedHat9へ変えた所、 FTPサーバが vsftpd-1.1.3-8 になり、NLST の結果が 5 で始まらない結果しか 返って来なくなりました。 Windows2k付属ftpのデバッグモードでサーバレスポンスを見ると次のような感じです。 ftp> ls aaa ---> PORT ###,###,###,###,###,### 200 PORT command successful. Consider using PASV. ---> NLST aaa 150 Here comes the directory listing. 226 Directory send OK. ftp> ※aaaは適当な存在しない適当なファイル名です。 これを見る限り vsftp サーバ側の反応が前と異なるということですよね。 この為ファイルの存在チェックができなくなってしまいました。 私の思いつく対策としては、 1.レスポンスコード(550)で判別ではなく、データポートに入ってくる値で存在チェックに変える。 2.NLST でなく quot SIZE や quot MDTM で判定(この場合 * ワイルドカードが使えなくなります) 3.vsftp のソースから変えてコンパイルする。 (該当個所がみつかるかどうか、変えて他に影響がないかどうかが問題です) 4.wuftp に戻す。 やっぱりワイルドカードは使いたいので4が一番手っ取り早いでしょうか。 サーバ側のconfファイルの設定などで前のNLSTのレスポンスに戻せたら一番いいのですが、 マニュアルを見た感じでは無理そうですし(英語は苦手なので間違いがあるかもしれませんが) サーバのレスポンスが変わってしまった理由や本来はどうあるべきなのかなど なんでもいいですので、この件についてご意見をお聞かせ願いたいと思います。 よろしくお願いします。 |
|
早速ご返答頂きまして、まことに有り難うございます。 実行したところ、最大化した画面が戻りました。 (もう一回実行すると最大化しました。) とても助かりました有り難うございます。 これからも宜しくお願い致します。 -------------------------------------------------------------------------------- No. 3911 # sorame 2004/08/04 (水) 00:56:13 alt+enterはコマンドプロンプトというよりも 最大化した状態のアプリケーションを戻すようなイメージで使えます。 -------------------------------------------------------------------------------- No. 3910 # 68user 2004/08/03 (火) 23:07:49 Windows には詳しくないので「コマンドプロンプト 最大化 戻す」で 検索したところ、 http://forum.nifty.com/fpcu/top/doslog01/0896.htm > 通常、Alt+Enter(Altキーを押しながらEnterキーを押す)で戻ります。 だそうです。試してみてください。 |