gpt4 book ai didi

linux - xargs + curl "Failed writing body"(不能将多个结果保存到文件)

转载 作者:太空宇宙 更新时间:2023-11-04 09:57:45 25 4
gpt4 key购买 nike

我对 xargs 和 curl 有疑问。

我在“urls”文件中有 url 列表,我需要下载仅限于前 9 行的这些内容,并将所有内容保存到一个输出文件(或每个结果一个文件 - 无关紧要)。

xargs -P 4 -n 1 curl < urls | head -n 9 > outputfile

问题是,只有第一个结果保存到文件,所有其他结果都给出错误“(23) 写入正文失败”。即使我不将结果保存到文件,控制台中也会出现“(23) 写入正文失败”错误。

总而言之:我需要从文件中下载前 9 行 XXXX URL,并将其保存到一个输出文件,或每个 URL 一个文件。

该问题存在于 Cygwin (Windows 10) 和 MacOs 上。

最佳答案

您的管道将输出限制为 xargs 输出的前 9 行。试试这个。

xargs -P 4 -i sh -c 'curl {} | head -n 9' <urls >outputfile

这可能会无法控制地混淆并行提取的输出行。如果你想避免这种情况,也许可以看看 GNU parallel。如果这是 Not Acceptable ,可以将每个写入一个单独的临时文件,并在获取完成后连接并删除临时文件。

关于linux - xargs + curl "Failed writing body"(不能将多个结果保存到文件),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58781348/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com