![f572595ccb03bc301cb786721343ef86.png](https://i-blog.csdnimg.cn/blog_migrate/e6bd30edc288daf651f9856658d451ea.jpeg)
这一期我们一步一步写一个Linux shell批量抓取网页图片的脚本,具体步骤如下:
目标:批量抓取网页图片
当浏览某个网页发现很多自己喜欢图片的时候,可以通过shell脚本批量抓取网页图片
预备知识:
egrep 语法
curl语法
Linux Shell脚本:
![f76fdef9fb105ff998e0c8cae9ec0361.png](https://i-blog.csdnimg.cn/blog_migrate/eeec43da3577a0dbd62e4a8133f1afe3.jpeg)
脚本执行结果:
![bf5f8e5b4a115adcce725e64374a80c8.png](https://i-blog.csdnimg.cn/blog_migrate/8c3016594d419da71e73a82c4d702be7.jpeg)
ls -l 查看抓取的图片:
![daf618eaa5556ca6cc0b000020df89b3.png](https://i-blog.csdnimg.cn/blog_migrate/26a03606e6110abb4850b3591d87f876.jpeg)
重点语法:
egrep
egrep执行效果与"grep-E"相似,使用的语法及参数可参照grep指令,与grep的不同点在于解读字符串的方法。
语法:
egrep [范本模式] [文件或目录]
参数说明:
[范本模式] :查找的字符串规则。
[文件或目录] :查找的目标文件或目录。
curl
curl 是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。
语法:# curl [option] [url]
-A/--user-agent 设置用户代理发送给服务器
-b/--cookie cookie字符串或文件读取位置
-c/--cookie-jar 操作结束后把cookie写入到这个文件中
-C/--continue-at 断点续转
-D/--dump-header 把header信息写入到该文件中
-e/--referer 来源网址
-f/--fail 连接失败时不显示http错误
-o/--output 把输出写到该文件中
-O/--remote-name 把输出写到该文件中,保留远程文件的文件名
-r/--range 检索来自HTTP/1.1或FTP服务器字节范围
-s/--silent 静音模式。不输出任何东西
-T/--upload-file 上传文件
-u/--user 设置服务器的用户和密码
-w/--write-out [format] 什么输出完成后
-x/--proxy 在给定的端口上使用HTTP代理
-#/--progress-bar 进度条显示当前的传送状态