Shell脚本怎么实现批量下载网络图片
这篇文章主要介绍“Shell脚本怎么实现批量下载网络图片”,在日常操作中,相信很多人在Shell脚本怎么实现批量下载网络图片问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Shell脚本怎么实现批量下载网络图片”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
最近为了做好一个天气预报的项目,需要从Yahoo下载一些天气图标,但是由于图标比较多,有80多张。图标是存储在Yahoo Image网站上的。
迅雷不支持https的下载,虽然可以在浏览器下载,但是在浏览器下载太慢,于是写了一个批量下载图片资源的Shell脚本,完美的解决了这个问题。
Yahoo天气图标的地址规则如下:https://s.yimg.com/zz/combo?a/i/us/nws/weather/gr/ + 图标名称
比如:
我使用了2种方法,解决了下载的难题,虽然好久没有写Shell脚本了,但是意识和底子还在,写即几十行代码还是比较轻松的。
方法1:
#!/bin/bash
#
#Decription:
#AShellscriptusedtodownloadtheimgesfromInternet.
#Author:
#LongLuo
#Date:
#2014-09-1100:16:59
#
BASE_URL="https://s.yimg.com/zz/combo?a/i/us/nws/weather/gr/"
#declareSTIRNGvariable
STRING="BeginningImagedownload..."
#printvaronscreen
echo$STRING
sleep1
echo"...."
BIG_PNG="ds.png"
PNG=".png"
echo"url="${BASE_URL}
echo"bigpng="${BIG_PNG}
for((i=0;i<49;i++));do
echoIMG_URL=${BASE_URL}${i}${BIG_PNG}
echo"finalurl="${IMG_URL}
curl${BASE_URL}${i}${BIG_PNG}-osmall/${i}${PNG}
sleep1
done方法2:
方法2将图片URL地址都写在一个数组里,然后从数组中读取,并重命名,相对来说,不如第一种方法简单:
#Method2
URL_ARRAY=(
'https://s.yimg.com/zz/combo?a/i/us/nws/weather/gr/0d.png'
'https://s.yimg.com/zz/combo?a/i/us/nws/weather/gr/1d.png'
)
NAME_ARRAY=(
'file1.jpg'
'file2.jpg'
)
ELEMENTS=${#URL_ARRAY[@]}
for((i=0;i到此,关于“Shell脚本怎么实现批量下载网络图片”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注恰卡编程网网站,小编会继续努力为大家带来更多实用的文章!
推荐阅读
-
怎样在 Linux中优化 Shell 脚本执行速度
-
怎样在 Linux中设置用户的登录 Shell 限制
-
Linux怎么设置用户的默认 shell
-
Linux中如何安全注销当前用户账户
-
浅谈php一句话木马工作原理
-
PHP中9个非常非常有用的函数
-
Shell编程基础(五)Shell数组与Subshell
-
linux shell 解析命令行参数及while getopts用法小结
目录linuxshell解析命令行参数|getpotsgetpotslinuxshell解析命令行参数|getpotsd...
-
jenkins如何实现shell脚本化定时执行任务
jenkins如何实现shell脚本化定时执行任务这篇文章将为大家...
-
nginx服务启动程序的Shell脚本怎么写
nginx服务启动程序的Shell脚本怎么写这篇文章主要介绍“ng...
