Bash 使用Curl数据二进制选项,内存不足

Bash 使用Curl数据二进制选项,内存不足,bash,shell,curl,google-api,Bash,Shell,Curl,Google Api,我正在使用curl上传数据。我需要上传二进制数据 不幸的是,我认为curl首先将文件二进制文件加载到内存中,因此对于大型文件来说,这是一个问题。我使用的系统可用内存非常少,因此即使是8mb大的文件也很难使用,我得到: curl: option --data-binary: out of memory curl: try 'curl --help' for more information 我尝试过分块选项,但这似乎也不起作用 到目前为止,这是我正在尝试的: curl --insecure -v

我正在使用curl上传数据。我需要上传二进制数据

不幸的是,我认为curl首先将文件二进制文件加载到内存中,因此对于大型文件来说,这是一个问题。我使用的系统可用内存非常少,因此即使是8mb大的文件也很难使用,我得到:

curl: option --data-binary: out of memory
curl: try 'curl --help' for more information
我尝试过分块选项,但这似乎也不起作用

到目前为止,这是我正在尝试的:

curl --insecure -v --max-time 1200 ... --data-binary @/tmp/sd/record/....mp4 --header Transfer-Encoding: chunked -o UPLOAD_TOKEN -D Media_Binary_Data https://....upload

有没有一种方法可以防止文件将二进制文件加载到内存中,或者强制它将这些数据存储在sd卡中并从sd卡中读取?

内存不足的原因是--数据和它的朋友在将数据发送到服务器之前都将数据读取到内存中。你可以通过使用-T-X POST轻松解决这个问题,但我仍然相信你在最初的-F测试中已经出错了


From:

谢谢,我用-T替换了数据二进制,并且没有使用-X Post作为-T推断Post,这似乎已经解决了这个问题。