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

URL = "sitehere.com"

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

我该怎么做呢?


当前回答

有几个选项可以将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输出到文件中

 # 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 

您需要在“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输出而不是输出到文件的人,可以在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 |剪辑

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

curl -K myconfig.txt >> output.txt

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