Chinaunix首页 | 论坛 | 博客
  • 博客访问: 716851
  • 博文数量: 235
  • 博客积分: 4309
  • 博客等级: 中校
  • 技术积分: 2325
  • 用 户 组: 普通用户
  • 注册时间: 2011-01-17 11:25
个人简介

If you don\\\\\\\\\\\\\\\'t wanna do it, you find an EXCUSE; if you do, you\\\\\\\\\\\\\\\'ll find a WAY :-)

文章分类

全部博文(235)

文章存档

2014年(3)

2013年(2)

2012年(31)

2011年(199)

分类: BSD

2011-01-19 19:41:14


作者:home_king

用法:
wgetscript list #list是下载列表

功能(特色):
1.利用了wget的断点续传功能
由于下载过程中,可能由于某种原因而中断下载过程,例如碰到一个死链接,下载了部分就停止了响应,这时候按Ctrl+C退出,wget会自动生成文件而忽略文件的完整性。
2.消除中断后续载的重复冗余项
比如说*.wget中出现了一个死链接而没有下载该源码包,修正*.wget的内容后,再运行脚本,将只下载上次没有成功下载的源码包,而无须重新下载所有源码包,如果下载内容很多的话,该脚本的方便性就体现出来了;再比如说,如果要多下载一个补丁,把该url添加到*.wget后,再运行脚本,则只下载新添加的补丁;如果没有所有源码包都已下载,该脚本无动作。
3.在下载完毕后,会列出那些出现死链接的源码包以便修正

代码:
# Wget Script with history-logged feature.
# Written by home_king

wget_list=$1
                                                                                
if [ -n "$wget_list" ] && [ -e "$wget_list" ];then
        rm -f Error.log
        for i in `grep -E '^*tp://' "$wget_list"`; do
                if [ -n $i ] && [ ! -e ${i##*/} ] || [ -e "${i##*/}.part" ]; then
                        wget -c $i -O "${i##*/}.part" && \
                        mv "${i##*/}.part" ${i##*/}
                        [ $? -gt 0 ] && echo "${i##*/}" >> Error.log
                fi
        done
        [ -e Error.log ] && \
        echo "Unable to download below packages with wrong urls:" && \
        cat Error.log && \
        echo "Also see Error.log in detail."
fi
阅读(627) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~