您的位置:首页 > 其它

使用curl递归下载软件脚本分享

2014-03-05 10:33 1141 查看
#!/bin/env bashPATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbinexport PATHclearUrl="http://mirrors.cnnic.cn/apache/"DownListFile="/tmp/downlist.txt"DownListTmpFile="/tmp/tmplist.txt"DownFileType="zip$|gz$"DownList=""UrlBack="$Url"[ ! -f $DownListFile ] && touch $DownListFile || echo > $DownListFile[ ! -f $DownListTmpFile ] && touch $DownListTmpFile || echo > $DownListTmpFileCURL_URLS(){ Urls=`curl $UrlBack |awk -F "a href=\"" '{printf "%s\n",$2}'|awk -F "\"" '{printf "%s\n",$1}'|grep -vE "^$|^\?|^http:\/\/"|^#`}URL_LIST(){ CURL_URLS for i in $Urls ;do  echo "$UrlBack$i" >> $DownListTmpFile done}RECURSIVE_SEARCH_URL(){ UrlBackTmps=`cat $DownListTmpFile` [[ "$UrlBackTmps" == "" ]] && echo "no more page for search" && exit 1 for j in $UrlBackTmps ;do  if [[ "${j##*\/}" != "" ]] ;then   echo "$j" >> $DownListFile  else   UrlBack="$j"   URL_LIST  fi  UrlTmps=`grep -vE "$j$" $DownListTmpFile`  echo "$UrlTmps" > $DownListTmpFile  RECURSIVE_SEARCH_URL done}DOWNLOAD_FILE(){ DownList=`grep -E "$DownFileType" $DownListFile` for k in $DownList ;do  FilePath=/tmp/${k#*\/\/}  [ ! -d `dirname $FilePath` ] && mkdir -p `dirname $FilePath`  [ ! -f $FilePath ] && cd `dirname $FilePath` && curl -O $k done}URL_LIST $UrlsRECURSIVE_SEARCH_URL
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  curl 递归
相关文章推荐