当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 4 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : [原创]也来贴一个pacman的加速脚本(需要aria2)
帖子发表于 : 2008-05-16 12:25 

注册: 2008-01-31 16:55
帖子: 99
送出感谢: 0 次
接收感谢: 0 次
代码:
#!/bin/bash
#
#   NEED  wget and aria2 !!!!
#

#configure:

# CONNECTS = 1..5 for every URL (server)
CONNECTS=3

#TIMEOUT (seconds)
TIMEOUT=15

# MAX_TRIES=0 means unlimited
MAX_TRIES=5

# You can append K or M ; 0=unrestricted
SPEED=0

# FILE_ALLOC can be "prealloc" or "none"
FILE_ALLOC=none

cachedir=/var/cache/pacman/pkg
mirrorlist_file=/etc/pacman.d/mirrorlist

#configure end
getmirror(){
   local mirrorlist
   #output the url to download in $mirror
   while read mirrorlist
   do
      # cut the mirrorlist's item
      #echo $mirrorlist

      # ignore the comment
      mirrorlist="${mirrorlist%%#*}"

      # select out the mirror line
      if [ "${mirrorlist##*=*}" != "$mirrorlist" ]
      then
         mirrorlist="${mirrorlist#*=}"
         while [   mirrorlist = "${mirrorlist# }" ];do mirrorlist="${mirrorlist# }";done
         while [   mirrorlist = "${mirrorlist% }" ];do mirrorlist="${mirrorlist% }";done
         mirror="${mirror} ${mirrorlist}/${purefilename}"
         #eval echo "${mirrorlist}/${purefilename}"
      fi
   done
} <$mirrorlist_file
if [[ $1 = *.db.tar.gz ]]; then
   wget --passive-ftp -c -O $2 $1
   exit
fi
# compute the global-variable
repo=${1%/*}
repo=${repo%/*}
repo=${repo%/*}
repo=${repo##*/}
purefilename=${1##*/}

getmirror
cd  "$cachedir"
echo ">>>>>> Downloading ${purefilename} <<<<<<<"
eval aria2c -d"${cachedir}" -o"${purefilename}" -s${CONNECTS} -t${TIMEOUT} --max-tries=${MAX_TRIES} --max-download-limit=${SPEED} --file-allocation=${FILE_ALLOC} --allow-overwrite=true --continue ${mirror}

if [ -f "$cachedir/$purefilename.aria2" ]
then
   exit 130
fi
exit 0


大概是由于全世界源不统一,用metalink下载来的东西常常校验错误,选择几个时间比较同步的镜像作为源吧


最后由 wuchuanren 编辑于 2012-07-08 21:47,总共编辑了 1 次

页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2008-05-16 12:28 
头像

注册: 2005-08-14 21:55
帖子: 58428
地址: 长沙
送出感谢: 4
接收感谢: 272
勤劳的bash工作者。 :lol:
需要用正则不。 if [[ $1 =~ .*\-.* ]]; then 这样的。

http://eexpress.blog.ubuntu.org.cn/2008 ... %e6%96%ad/


_________________
● 鸣学


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2008-05-16 12:33 

注册: 2008-01-31 16:55
帖子: 99
送出感谢: 0 次
接收感谢: 0 次
哈哈,感谢……


最后由 wuchuanren 编辑于 2012-07-08 21:47,总共编辑了 1 次

页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2008-05-16 20:10 

注册: 2006-07-10 22:50
帖子: 380
送出感谢: 0 次
接收感谢: 0 次
哈哈,还是建议用这个!http://forum.ubuntu.org.cn/viewtopic.php?t=124355


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 4 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译