我想上传一个包含curl
的大文件。
为此,我想将其拆分,而不将其保存到磁盘(如split
)。我尝试将--continue-at
与Content-Length
一起使用。
curl -s \
--request PATCH \
--header "Content-Type: application/offset+octet-stream" \
--header "Content-Length: ${length}" \
--header "Upload-Offset: ${offset}" \
--continue-at "${offset}" \
--upload-file "${file}" \
"${dest}"
但curl
“超出”并忽略Content-Length
。有--stop-at
之类的东西吗?或者,如有必要,我必须使用dd
。
修改
dd
解决方案:
curl -s \
--request PATCH \
--header "Content-Type: application/offset+octet-stream" \
--header "Content-Length: ${length}" \
--header "Upload-Offset: ${offset}" \
--data-binary "@-" \
"${dest}" < <(dd if=${file} skip=${offset} count=${length} iflag=skip_bytes,count_bytes 2>/dev/null)
但如果可能,我只想使用cURL ..