uta_at_home回答ポイント 200ptウォッチ 1

Perlで、Net::FTPモジュールを使って

サーバーにファイルをアップロード(PUT)しようとしているのですが
うまくいきません。

次のようなソースです。
何が悪いのか診断してもらえないでしょうか?

※補足
・FFFTPでは、PASVモード有効、ポート番号21でGETもPUTも成功しているので、
 FTPの設定の問題ではないと思います。
・$ftp->pwd()すると、cwdで移動したパスをちゃんと取ってくるので、
 ログインや cwdは成功しているようです。
・特に、$ftp->putでパソコン上のファイルのパスを指定する方法がよくわかりません。

use Net::FTP;

$FtpHostName = "hogehoge.com";
$FtpDataPath = "/home/hogehoge/www/sub";
$FtpUserName = "myname";
$FtpPassword = "letmein";

$datafile = "C:\\temp\\test.txt";

$ftp = Net::FTP->new( $FtpHostName );
$ftp -> login( $FtpUserName, $FtpPassword );
$ftp -> pasv();
$ftp -> port( 21 );
$ftp -> ascii();

$ftp -> cwd( $FtpDataPath );

$ftp -> put( $datafile ) or
die "PUT FAILED";
$ftp -> quit();

よろしくお願いします。

※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。
ログインして回答する

ベストアンサー

その他の回答

この質問へのコメント

この質問への反応(ブックマークコメント)

質問の情報

登録日時
2010-07-10 22:52:01
終了日時
2010-07-13 02:15:37
回答条件
1人2回まで

この質問のカテゴリ

この質問に含まれるキーワード

Perl1679FTP742FFFTP144モジュール927LOGiN141ASCII66ログイン2397アップロード1578サーバー4609

人気の質問

メニュー

PC版