どのようにしてPerlスクリプトでFTPからSFTPに変換するのでしょうか?
質問
私は、AIXボックスにファイルのカップルを送信するためにFTPオブジェクトを使用して、既存のPerlスクリプトを持っています。私はちょうど私たちのLinuxボックスには、FTPをサポートしていないことを発見しました。これは、SFTPをサポートしています。どのような手順は、私がSFTPを使用するように私のスクリプトに変換するために通過する必要がありますか?
解決
あなたの現在のスクリプトは、おそらくネット:: FTP のモジュールを使用しています。あなたははNet :: SFTP のモジュールやCPANからその依存関係が必要になります。あなただけでもガイドとして既存のものを使用して新しいスクリプトを起動することがあります。ロジックは、しかし、同じです。接続、送信、および切り離します。
他のヒント
私は実際に似た何かをやりました。しかし、それは必要なときにSFTP経由で実行される任意の現在のFTPスクリプトを調製することでした。
私が見て、 Net::SFTP
のラッパーオブジェクトを作りましたhref = "http://search.cpan.org/perldoc?Net::FTP" のrel = "noreferrer"> Net::FTP
のオブジェクト。そのため、すべてのコールは、異なる実装を持つ場所に残ることができました。
私はこれから行ってきました
my $client = Net::FTP->new( Host => 'ftp.somehost.com', ... );
タグに
my $client = FTPClient->new( Host => 'ftp.somehost.com', ...
, secureFTP => 1
);
そして、ちょうど私が私の新しいクラスに Net::FTP
するから使用していたすべてのメソッドを実装。あなたが実際に機能をラップする必要があるだけではなく使用して Net::SFTP
には、いくつかの異なったリターンをバック与えます Class::Delegator
のようなもの。