Ubuntu:使用curl下载图像

Man*_*edi 52 linux terminal ubuntu curl ubuntu-14.04

我想下载一个可从此链接访问的图像:https://www.python.org/static/apple-touch-icon-144x144-precomposed.png进入我的本地系统.现在,我知道该curl命令可用于通过终端下载远程文件.所以,我在终端中输入以下内容,以便将图像下载到我的本地系统:

curl https://www.python.org/static/apple-touch-icon-144x144-precomposed.png
Run Code Online (Sandbox Code Playgroud)

但是,这似乎不起作用,所以很明显还有其他方法可以从Internet上下载图像curl.使用此命令下载图像的正确方法是什么?

dda*_*son 86

curl没有任何选项将执行GET请求.它只会从指定的URI返回数据.不将文件本身检索到本地计算机.

当你这样做的时候

$ curl https://www.python.org/static/apple-touch-icon-144x144-precomposed.png
Run Code Online (Sandbox Code Playgroud)

您将收到二进制数据:

                   |?>?$! <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 ...
Run Code Online (Sandbox Code Playgroud)

为了保存这个,您可以使用:

$ curl https://www.python.org/static/apple-touch-icon-144x144-precomposed.png > image.png
Run Code Online (Sandbox Code Playgroud)

将原始图像数据存储在文件中.

更简单的方法就是使用wget.

$ wget https://www.python.org/static/apple-touch-icon-144x144-precomposed.png
$ ls
.
..
apple-touch-icon-144x144-precomposed.png
Run Code Online (Sandbox Code Playgroud)

  • @FabianRios,我想这就像将格式的扩展名更改为 .txt 而不是 .png 一样简单,我刚刚尝试过并且成功了。 (2认同)

小智 27

对于那些没有或不想安装wget的人来说,curl -O(大写"o",而不是零)会做同样的事情wget.例如,我的旧上网本没有wget,并且是我不需要的2.68 MB安装.

curl -O https://www.python.org/static/apple-touch-icon-144x144-precomposed.png
Run Code Online (Sandbox Code Playgroud)

  • "是我不需要的2.68 MB安装." 现在*这是*你的存储节俭.布拉沃.:) (14认同)

daG*_*aGo 8

如果要保留原始名称,请使用大写字母-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


kor*_*hix 5

创建一个名为files.txt的新文件,并将URL每行粘贴一个。然后运行以下命令。

xargs -n 1 curl -O < files.txt
Run Code Online (Sandbox Code Playgroud)

来源:https : //www.abeautifulsite.net/downloading-a-list-of-urls-自动


Geo*_*ili 5

对于那些进行permission denied保存操作的人来说,这是对我有用的命令:

$ curl https://www.python.org/static/apple-touch-icon-144x144-precomposed.png --output py.png
Run Code Online (Sandbox Code Playgroud)