1

Linux コマンド ラインで wget コマンドを使用して、別のサーバーからファイルをダウンロードできます。例:

wget ftp_site_name/file_name

しかし、perl スクリプト内で wget を実行すると、同じファイルをダウンロードできませんでした

system "/usr/bin/wget ftp_site_name/file_name";

また

system "wget ftp_site_name";

エラーメッセージのスニペットは次のとおりです。

Resolving ftp site  ...xx.xx.x.xx

Connecting to ftp site|xx.xx.x.xx|:xx... connected.

Logging in as anonymous ... Logged in!

==> SYST ... done.    ==> PWD ... done.

==> TYPE I ... done.  ==> CWD (1) /pub/??/??/ ...

No such directory `pub/??/??/'.

助言がありますか?

4

1 に答える 1

0

実際のエラー メッセージがなければ、何が問題なのかを判断するのは困難ですが、いくつかの推測があります。

パスにワイルド文字またはスペースが含まれている場合は、アポストロフィまたはエスケープを使用してください。

my $ftpname="/pub/some path with spaces/works_with_wildchar?/";
my $out = `wget '$ftpname'`;
print "out:\n$out\n";

or
my $ftpname="/pub/some path with spaces/works_with_wildchar?/";
my $out = qx!wget $ftpname!;
print "out:\n$out\n";
于 2012-11-09T15:55:47.203 に答える