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

URL = "sitehere.com"

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

我该怎么做呢?


当前回答

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

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

其他回答

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

示例:curl https://www.google.com/robots.txt | pbcopy。这将从给定的URL复制所有内容到剪贴板。

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

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

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

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

使用——trace-ascii output.txt将curl详细信息输出到output.txt文件中。

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

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

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

在这种情况下,可以使用curl或wget。所有这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命令下载文件并保存为不同的文件名