问题描述
我想从此链接下载可访问的图像:https://www.python.org/static/apple-touch-icon-144x144-precomposed.png
到我的本地系统中。现在,我知道curl
命令可用于通过终端下载远程文件。因此,我在终端中输入了以下内容,以便将映像下载到本地系统中:
curl https://www.python.org/static/apple-touch-icon-144x144-precomposed.png
但是,这似乎不起作用,因此很明显,还有其他方法可以使用curl
从Internet下载图像。使用此命令下载图像的正确方法是什么?
最佳思路
没有任何选项的curl
将执行GET请求。它将仅从指定的URI返回数据。不会将文件本身检索到本地计算机。
做的时候
$ curl https://www.python.org/static/apple-touch-icon-144x144-precomposed.png
您将收到二进制数据:
|�>�$! <R�HP@T*�Pm�Z��jU֖��ZP+UAUQ@�
��{X\� K���>0c�yF[i�}4�!�V̧�H_�)nO#�;I��vg^_ ��-Hm$$N0.
���%Y[�L�U3�_^9��P�T�0'u8�l�4 ...
为了保存此,您可以使用:
$ curl https://www.python.org/static/apple-touch-icon-144x144-precomposed.png > image.png
将原始图像数据存储在文件中。
不过,更简单的方法是使用wget
。
$ wget https://www.python.org/static/apple-touch-icon-144x144-precomposed.png
$ ls
.
..
apple-touch-icon-144x144-precomposed.png
次佳思路
对于那些既不需要也不想安装wget的用户,curl -O
(大写”o”,不是零)将与wget
进行相同的操作。例如。我的旧上网本没有wget,是我不需要的2.68 MB安装。
curl -O https://www.python.org/static/apple-touch-icon-144x144-precomposed.png
第三种思路
如果要保留原始名称,请使用大写字母-O
curl -O https://www.python.org/static/apple-touch-icon-144x144-precomposed.png
如果要使用其他名称保存远程文件,请使用小写字母-o
curl -o myPic.png https://www.python.org/static/apple-touch-icon-144x144-precomposed.png
第四种思路
创建一个名为files.txt的新文件,并将URL每行粘贴一个。然后运行以下命令。
xargs -n 1 curl -O < files.txt
资料来源:https://www.abeautifulsite.net/downloading-a-list-of-urls-automatically