【问题标题】:wget from a command line从命令行获取 wget
【发布时间】:2012-11-09 14:42:58
【问题描述】:

我可以在 Linux 命令行上使用 wget 命令从另一台服务器下载文件,例如:

wget ftp_site_name/file_name

但是当我在 perl 脚本中运行 wget 时,我无法下载相同的文件

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

system "wget ftp_site_name";

这里是错误信息的sn-p:

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/??/??/'.

有什么建议吗?

【问题讨论】:

标签: perl wget


【解决方案1】:

如果没有实际的错误消息,很难判断出了什么问题,但我有一些猜测:

如果路径包含通配符或空格,请使用撇号或转义。

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-11 12:49:36-- server.name/pub/incoming/2009/1000/filename => filename' Resolving server.name... 20.44.0.16 Connecting to server.name|20.44.0.16|:21... connected. Logging in as anonymous ... Logged in! ==> SYST ... done. ==> PWD ... done. ==> TYPE I ... done. ==> CWD (1) /pub/incoming/2009/1000 ... No such directory pub/incoming/2009/1000 '。
  • 基本上目录“pub/incoming/2009/1000”确实存在但是找不到。
  • 所以使用“my $out = qx!wget $ftpname!;”无法解决我的问题。它与我之前的消息中指出的错误消息相同。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-03-16
  • 2014-01-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多