好吧,所以我需要运行wget,但我禁止在我需要运行wget的位置创建'点'文件。所以我的问题是'我可以让wget使用除了.listing之外的名称,我可以指定'。wget .listing文件,有没有一种方法来指定它的名称
进一步说明:这是为了将ftp文件夹与本地文件夹同步/镜像,因此使用-O选项并不是很有用,因为我需要所有文件保持格式。
好吧,所以我需要运行wget,但我禁止在我需要运行wget的位置创建'点'文件。所以我的问题是'我可以让wget使用除了.listing之外的名称,我可以指定'。wget .listing文件,有没有一种方法来指定它的名称
进一步说明:这是为了将ftp文件夹与本地文件夹同步/镜像,因此使用-O选项并不是很有用,因为我需要所有文件保持格式。
可以使用-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
海报不询问输出文件的名称,但临时的'.listing'文件的名称wget创建了例如当从FTP下载与globbing时。在同一目录中使用多个wget实例时,这些文件会发生冲突。不知道为什么这被标记为答案,因为它不是。 – FelixD 2017-05-02 08:20:03
@FelixD,是的,不幸的是误解了这个问题。看看wget版本1.19(2017年2月)的代码,特别是ftp.c,看起来'.listing'文件在宏'LIST_FILENAME'中被硬编码,并且不可能被覆盖。镜像ftp站点可能有更好的选择 - 也许看看lftp及其镜像命令,还包括并行下载:https://lftp.yar。ru – msandiford 2017-05-02 11:38:20
感谢您的快速回复和检查源代码,可惜它是硬编码的。明天我们会看看lftp,也可能为我的具体任务提供另一种解决方法。 – FelixD 2017-05-02 17:00:24
@保罗:您可以使用指定-O选项由司朋
不,你不能这样做。
的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
我有同样的问题; 的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文件。
superuser.com? ___ – 2010-04-06 21:06:10