Shell 是否可以将远程url中的图像下载到缓存中,然后使用管道将其转换?
我有一些图片URL,我想下载它们。但是这些文件有不同的后缀,例如Shell 是否可以将远程url中的图像下载到缓存中,然后使用管道将其转换?,shell,curl,imagemagick,pipeline,imagemagick-convert,Shell,Curl,Imagemagick,Pipeline,Imagemagick Convert,我有一些图片URL,我想下载它们。但是这些文件有不同的后缀,例如.jpg、.png或.bmp。我还想将它们更改为统一格式,例如.JPEG。因此,我想使用curl命令将图像下载到内存缓存中,然后使用ImageMagick包中的convert命令将数据格式转换为.JPEG格式。有没有办法做这项工作 `curl http://aa.com/a.jpg` `convert a.jpg 00001.JPEG` `rm a.jpg` `curl http://bb.com/b
.jpg
、.png
或.bmp
。我还想将它们更改为统一格式,例如.JPEG
。因此,我想使用curl
命令将图像下载到内存缓存中,然后使用ImageMagick
包中的convert
命令将数据格式转换为.JPEG
格式。有没有办法做这项工作
`curl http://aa.com/a.jpg`
`convert a.jpg 00001.JPEG`
`rm a.jpg`
`curl http://bb.com/b.png`
`convert b.png 00002.JPEG`
`rm b.png`
我想简化这个过程,让临时文件保存到缓存中,然后不直接保存到磁盘中,这样可以减轻磁盘的负担。
有没有办法使用管道技术来完成这项工作?比如
`curl http://aa.com/a.jpg | convert ... | ...`
提前感谢。您可以执行以下操作:
curl http://aa.com/a.jpg | convert - 00001.jpeg
curl http://bb.com/b.jpg | convert - 00002.jpeg
然后,文件采用JPEG格式:
user@host:~# file 00001.jpeg
file.jpeg: JPEG image data, JFIF standard 1.01
user@host:~# file 00002.jpeg
file.jpeg: JPEG image data, JFIF standard 1.01
就是这样。另一种选择:直接使用ImageMagick,因为它支持。所以转换http://example.com/a.png jpeg
真的很管用。@deltheil,真的!它更简单。谢谢