3

好的,所以我需要运行 wget,但禁止我在需要运行 wget 的位置创建“点”文件。所以我的问题是'我可以让 wget 使用我可以指定的 .listing 以外的名称吗'。

进一步说明:这是将 ftp 文件夹与本地文件夹同步/镜像,因此使用 -O 选项并不是很有用,因为我要求所有文件都保持格式。

4

4 回答 4

0

您可以使用该-O选项来设置输出文件名,如下所示:

wget -O file http://stackoverflow.com

您还可以使用wget --help获取完整的选项列表。


对于后来出现并且对错误问题的答案感到惊讶的人,这里是以下评论之一的副本:

@FelixD,是的,不幸的是误解了这个问题。查看 wget 版本 1.19(2017 年 2 月)的代码,特别是 ftp.c,似乎 .listing 文件在宏中是硬编码的LIST_FILENAME,并且无法覆盖。镜像 ftp 站点可能有更好的选择 - 也许看看 lftp 及其镜像命令,还包括并行下载:lftp.yar.ru

于 2010-04-06T21:32:05.160 回答
0

@Paul:您可以使用 spong 指定的 -O 选项

于 2010-04-07T05:49:55.107 回答
0

不,你不能这样做。

wget/src/ftp.c

/* File where the "ls -al" listing will be saved.  */
#ifdef MSDOS
#define LIST_FILENAME "_listing"
#else
#define LIST_FILENAME ".listing"
#endif
于 2018-01-24T11:06:13.960 回答
0

我有同样的问题;wget 似乎将.listing文件保存在调用 wget 的当前目录中,无论-O path/outpout_file

作为一个丑陋/绝望的解决方案,我们可以尝试从随机目录运行 wget:

cd /temp/random_1; wget ftp://example.com/ -O /full/save_path/to_file_1.txt

cd /temp/random_2; wget ftp://example.com/ -O /full/save_path/to_file_2.txt

注意:手册说使用该--no-remove-listing选项将导致它创建.listing.1, 。listing.2等,因此这可能是避免冲突的一种选择。

注意:如果 ftp 登录失败,则根本不会创建 .listing 文件。

于 2018-03-06T13:17:58.713 回答