如何捕获cURL输出到文件?

我有一个文本文档,它包含了一堆这样格式的url:

URL = "sitehere.com"

我要做的是运行curl -K myfile.txt,并将响应cURL返回的输出获取到一个文件中。

我该怎么做呢?

978794 次浏览
curl -K myconfig.txt -o output.txt

写入在指定文件中接收到的第一个输出(如果存在旧输出则覆盖)。

curl -K myconfig.txt >> output.txt

将收到的所有输出追加到指定文件。

# EYZ0

对于单个文件,您可以使用-O而不是-o filename来使用URL路径的最后一段作为文件名。例子:

curl http://example.com/folder/big-file.iso -O

将结果保存到当前文件夹中名为big-file.iso的新文件中。通过这种方式,它的工作原理类似于wget,但允许您指定使用wget时不可用的其他旋度的选择

对于那些想要在剪贴板中复制cURL输出而不是输出到文件的人,可以在cURL命令后使用管道|来使用pbcopy

例如:# EYZ0。这将从给定的URL复制所有内容到剪贴板。

Linux版本:curl https://www.google.com/robots.txt | xclip

Windows版本:curl https://www.google.com/robots.txt | clip

有几个选项可以将curl输出到文件中

 # saves it to myfile.txt
curl http://www.example.com/data.txt -o myfile.txt


# The #1 will get substituted with the url, so the filename contains the url
curl http://www.example.com/data.txt -o "file_#1.txt"


# saves to data.txt, the filename extracted from the URL
curl http://www.example.com/data.txt -O


# saves to filename determined by the Content-Disposition header sent by the server.
curl http://www.example.com/data.txt -O -J

有点晚了,但我想他们想要的是:

curl -K myfile.txt --trace-ascii output.txt

如果您希望将输出存储到桌面,请使用git bash中的post命令执行以下命令。这对我很管用。

curl https://localhost:8080
--request POST
--header "Content-Type: application/json"
-o "C:\Desktop\test.txt"

使用--trace-ascii output.txt将旋度细节输出到文件output.txt

您需要在"URL"之间添加引号;o“file_output"否则,curl不识别URL或文本文件名。

格式

curl "url" -o filename

例子

curl "https://en.wikipedia.org/wiki/Quotation_mark" -o output_file.txt

Example_2

curl "https://en.wikipedia.org/wiki/Quotation_mark" > output_file.txt

一定要加上引号。

写入在指定文件中接收到的第一个输出(如果存在旧输出则覆盖)。

curl -K myconfig.txt >> output.txt

在这种情况下,curlwget都可以使用。所有这3个命令都做同样的事情,从http://path/to/file.txt下载文件并在本地保存到“my_file.txt”中:

wget http://path/to/file.txt -O my_file.txt  # my favorite--it has a progress bar
curl http://path/to/file.txt -o my_file.txt
curl http://path/to/file.txt > my_file.txt

注意第一个单词的-O是大写字母"O"。

wget命令的好处是它显示了一个漂亮的进度条。

您可以通过比较上述3种技术下载的文件的sha512哈希值来证明它们完全相同。在运行上面的每个命令之后运行sha512sum my_file.txt,并比较结果,显示所有3个文件具有完全相同的sha哈希值(sha和),这意味着文件是完全相同的,一个字节对一个字节。

参见:wget命令下载文件并保存为不同的文件名