linux-shell脚本高并发对文本url批量下载
实践出真知
样例
http://xxxx.file.myqcloud.com/yyy/xxxxx/xxxx.jpg
#注意xxx,yyy都是马赛克
需求:
1、url条数130万左右,图片都说16kB左右的小图片
2、需要对下载的图片命令成yyy.jpg 注意:yyy是具有唯一性特征的
#不限制进程,默认按实际最大创建
前提是高性能的linux主机,放开速度跑。带宽、cpu、内存、处理器,都相对好点
#!/bin/bash
#des 单线程读取文件url
mkdir smrz
while read -r i
do
ii=`echo ${i#*file.myqcloud.com/}`
id=`echo ${ii%%/*}`.jpg
curl -s -o smrz/$id $i
done < smrz_download_url.txt
对线程并发下载文件
#!/bin/bash
#des 不限制进程,默认按实际最大创建
#mkdir smrz_ff
while read -r i
do {
ii=`echo ${i#*file.myqcloud.com/}`
id=`echo ${ii%%/*}`.jpg
curl -s -o smrz_ff/$id $i
}& #执行循环丢进后台创建进程
done < xaf
wait
shell行读取文件:http://www.jb51.net/article/59041.htm
shell并发执行参考:http://blog.csdn.net/wangjin2891/article/details/51699860
linux-shell脚本高并发对文本url批量下载的更多相关文章
- LINUX SHELL脚本攻略笔记[速查]
Linux Shell脚本攻略笔记[速查] 资源 shell script run shell script echo printf 环境变量和变量 pgrep shell数学运算 命令状态 文件描述 ...
- Linux Shell脚本攻略 读书笔记
Linux Shell脚本攻略 读书笔记 这是一本小书,总共253页,但内容却很丰富,书中的示例小巧而实用,对我这样总是在shell门前徘徊的人来说真是如获至宝:最有价值的当属文本处理,对这块我单独整 ...
- Linux Shell脚本攻略
-Linux Shell脚本攻略 总结的来说,这本书很实践性和实用性强,都是给的具体的例子,直接可以在终端操作实践,比单纯只看不动手务实多了,另外就是,这本书涵盖的内容也比较广,从文本操作到服务器管理 ...
- 读《Linux Shell脚本攻略》(第2版) 一遍、二遍体会
前段时间读完了<Linux Shell脚本攻略>(第2版)这本书,给部分想读这本书的人分享下个人感受. 第一遍体会解读:就像黑夜中的灯塔,指明前进的道路. 推荐指数:强烈推荐. 书中讲解的 ...
- Linux Shell脚本入门--wget 命令用法详解
Linux Shell脚本入门--wget 命令用法详解 wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上.它有以下功能 ...
- linux shell 脚本攻略学习20--awk命令入门详解
awk生于1977年,创始人有三个,分别为 Alfred Aho,Peter Weinberger, 和 Brian Kernighan,名称源于三个创始人的姓的首字母. 作用:处理文本文件. awk ...
- 读书笔记--Linux Shell脚本攻略
总结的来说,这本书很实践性和实用性强,都是给的具体的例子,直接可以在终端操作实践,比单纯只看不动手务实多了,另外就是,这本书涵盖的内容也比较广,从文本操作到服务器管理到远程ssh等等,都给出来作者挑选 ...
- Linux Shell脚本入门--cut命令
Linux Shell脚本入门--cut命令 cut cut 命令可以从一个文本文件或者文本流中提取文本列. cut语法 [root@www ~]# cut -d'分隔字符' -f fields &l ...
- Linux Shell脚本教程
v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VM ...
随机推荐
- arcsde10 postgresql8.3 服务停止问题
---恢复内容开始--- arcsde10 安装在windows server2008 R2 X64 上. 从.gdb文件数据库 拷贝40W多的数据到ArcSDE ,然后postgresql就停止了, ...
- go语言之进阶篇主协程先退出
1.主协程先退出 示例: package main import ( "fmt" "time" ) //主协程退出了,其它子协程也要跟着退出 func main ...
- DevExpress ChartControl 柱状图的使用【转】
//中心业务平台的“热门岗位信息监测”柱状图 public partial class HotJobInfo : UserControl { private object _o ...
- Asp.net WebAPI Request参数验证-请不要重复造轮子
随着web客户端的发展,现在很多公司都有专业的前端开发,做到系统前后端分离.ap.net后端典型的就是采用webapi,但是发现很多时候大家对webapi并不了解,这里我们来说说输入参数的验证.前一段 ...
- SharePoint SPListItem 权限设置
namespace Microsoft.SharePoint { using System; using System.Text; using System.Collections.Generic; ...
- 读书笔记,《Java8实战》第一章,为什么要关心 Java8
开篇作者就提出,Java8所做的改变在许多方面比java历史上任何一次改变都深远.而且好消息是,这些改变会让你编辑程序来更容易,再也不用写类似类似于以前的swing中的事件处理函数的啰嗦代码了. ...
- Android Studio中实现AIDL
AIDL 先来两个传送门: http://www.cnblogs.com/yydcdut/p/3961545.html Android面试,与Service交互方式 http://www.cnblog ...
- ESXI部署OVF模板提示用户已取消操作处理方法
ESXI导出OVF部署到新的ESXI服务器上,Linux主机没有出现用户已取消操作的提示,部署WINDOW虚拟机的时候,提示用户已取消操作,如图: 首先,要先了解为什么会出现这个问题,原因在于,在做 ...
- Setting a maximum attachment size
By default IBM® Lotus® iNotes™ allows a maximum attachment size of 50,000K (50MB). You can increas ...
- Mathematica 文本界面获得之前的结果
使用%号做标记.获得文本界面之前的运算结果: