通过cURL将stdin中的数据作为具有特定名称的文件上传

eufgjt7s  于 2022-11-13  发布在  其他
关注(0)|答案(2)|浏览(114)

我正在使用curl -F file=@- http://etc/upload上传一些数据,这些数据通过管道传输到cURL中,运行正常,但是我希望能够指定报告给服务器的文件名。
可能吗?怎么可能?

mm9b1k5b

mm9b1k5b1#

在cURL手册页中:
-F/--form〈名称=内容〉
...
您可以[...]通过设置filename=显式更改文件上载部分的名称字段,如下所示:

curl-F“文件=@本地文件;文件名=nameinpost”

所以这正是我想要的。

echo funfunfun | curl -F file=@-;filename=fun.txt http://etc/upload

我发誓在问之前我已经读了几遍手册页,但直到现在才找到那一段。

ncgqoxb0

ncgqoxb02#

对于HTTP以外的协议,并且要将PUT用于HTTP而不是表单提交,请在URL中使用带文件名的-T -

echo bla-bla-bla | curl -T - ftp://user:password@example.com/foo.txt

相关问题