質問: Perlのftpでサーバ上ファイルを新しければ上書きする方法を教えてください。 windows8PCにActivePerl5.18を入れてPerlのNet::FTPで、 PCのファイルが新しければサーバにUPする処理をしたいです。 $ftp->put(PCファイル名,サーバファイル名) でUPは出来るのですが常に上書き転送になります。 PCファイルの日付の新しいファイルだけを上書きUPするには一発でいく 命令があるのか、それとも1つ1つ比較してUPするのでしょうか? PCファイルはstatのlocaltimeで更新日時を取得出来ましたが サーバー側のファイルでは $ftp->dir;等で、ファイル一覧の取得しか自分は出来ませんでした。 「パーミション 所有者 サイズ 日時 ファイル名」等が列挙されるのですが それを分解してファイル名と日時を取り出し、ローカルタイムスタンプと比較して UPするといけるとは思うのですが、知らない為に面倒な事をしてる気がします。 スマートに更新日時が新しいファイルだけ転送する方法があれば教えてください。 FTPソフトを使う等ではなくperlのftpで行いたいです。 又はWindowsのバッチftpのほうが簡単に行えるならそちらでも良いです。
回答: Net::FTPのmdtmメソッドでリモートファイルの更新日時が取得できるようです。 ``` $ftp->mdtm(FILE) ```