0

我的英语很差! :)

我想curl -r部分下载一个 2G 文件。

curl -r 0-1234567       -o file.part1 http://xxx
curl -r 1234567-2469134 -o file.part2 http://xxx

然后我得到:

file.part1 : 1234567 bytes
file.part2 : 1234568 bytes

file.part2 超过一个字节,所以我尝试截断第一个字节:

tail +2c file.part2 > file.part2.truncated

然后:

cat file.part1 file.part2.truncated > myfile

myfile 是我想要的。

4

2 回答 2

3

字节范围包括在内,因此应该是:

curl -r 0-1234567       -o file.part1 http://xxx
curl -r 1234568-2469134 -o file.part2 http://xxx
cat file.part1 file.part2 > myfile
于 2013-01-13T12:24:53.943 回答
1

--range标志curl包括整个范围,因此您将获得两次“1234567”字节。

此外,因为它是一个基于 0 的索引,所以范围的末尾应该少 1。也就是说,它们应该是 1234566 和 2469133,因为范围 0-1234566 是 1234567 个数字,1234567-2469133 也是如此。

curl -r 0-1234566       -o file.part1 http://xxx
curl -r 1234567-2469133 -o file.part2 http://xxx
cat file.part1 file.part2 > myfile
于 2013-01-13T12:29:52.773 回答