暂停然后恢复管道命令

暂停然后恢复管道命令

我正在下载很多我的研究数据。数据正在我校园的一台超级计算机上下载,但数据下载每小时都会中断。当操作系统暂停管道时,我必须删除文本文件中代表已下载文件的所有行。不难,但很烦人,我宁愿不这样做。这是我下载所有内容的方式

cat subset.txt | tr -d '\r' | xargs -P 4 -n 1 curl -LJO -s -n --globoff -c ~/.urs_cookies -b ~/.urs_cookies

每个 url 都会被传递给我curlxargs提供 4 个并行下载。有没有办法暂停整个管道并稍后继续管道?

答案1

你可以让curl并行下载-Z选项。你需要至少版本 7.66.0为此,但请注意,他们在 7.66 之后的版本中添加了更多并行相关标志。

最简单的命令是:

curl --config myconfig.txt -Z ...

其中myconfig.txt有这种格式的 url 列表(您可以添加其他标志,例如重命名输出、恢复下载等):

url = "http://example.com/a"
url = "http://example.com/j"

您可以在配置文件中找到更多信息在他们的网站上

相关内容