当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 4 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 高手问题:shell脚本如何多线程可监控下载文件
帖子发表于 : 2018-01-30 16:08 

注册: 2015-12-23 16:20
帖子: 110
系统: ubuntu 16.04
送出感谢: 1
接收感谢: 0 次
使用shell写批量下载脚本,
目前是单线程下载,脚本实例如下:

---------------------------------------
#!/bin/bash
for r in {1..300}
do
for i in {1..10}
do
echo $r file
echo $i time
you-get `sed -n ${r}p urls`
if [ $? == 0 ]
then
find -size +300M -exec mv {} /dest \; &
break
fi
done
done
-----------------------------------------

上面这个脚本只能单线程下载视频,因此速度必定有限,而且当视频进行合并的时候,还会空闲,浪费带宽。
因此希望可以写出3线程的下载脚本。

理想的模式是类似aria2的rpc那种模式,进程一直开着,多线程下载,然后前端监控,这样就知道具体每个文件的情况。
最好能够给you-get指定高速缓存设备,这样就能够加快合并的速度了。
希望写出的多线程下来脚本能够监控每个文件的下载进度。不要弄出那种3个文件同时下载,但是只有一个文件能够查看下载状态的情况。

高手看看!


页首
 用户资料  
 
2 楼 
 文章标题 : Re: 高手问题:shell脚本如何多线程可监控下载文件
帖子发表于 : 2018-02-06 11:58 
头像

注册: 2011-02-16 1:17
帖子: 372
送出感谢: 0 次
接收感谢: 6
标准输出到三个文件里再汇总?


_________________
My blog : OOXX


页首
 用户资料  
 
3 楼 
 文章标题 : Re: 高手问题:shell脚本如何多线程可监控下载文件
帖子发表于 : 2018-02-11 13:17 
头像

注册: 2007-05-06 8:19
帖子: 7467
送出感谢: 0 次
接收感谢: 5
楼主是要下载资源是么,干嘛不试下wget,
可以断点续传,可以设置多个线下载,可去后台。


页首
 用户资料  
 
4 楼 
 文章标题 : Re: 高手问题:shell脚本如何多线程可监控下载文件
帖子发表于 : 2018-04-30 19:00 

注册: 2017-09-21 14:46
帖子: 28
系统: ubuntu16.04
送出感谢: 5
接收感谢: 0 次
shell 是单线程语言.不过可以伪造多进程 网上学来的 利用后台+wait

试试这个 秒级 探测活跃主机

代码:
#!/bin/bash
# ******************************************************
# Author       : kids
# Last modified: 2018-04-30 18:42
# Email        : ak871933839@163.com
# Filename     : fping.sh
# Description  :
# ******************************************************

for i in `seq 1 254`
        do
                {
                        fping -t 30 192.168.31.$i >/dev/null 2>&1
                        [ $? -eq 0 ]&&{
                                echo "192.168.31.$i is up"
                        }
                }&

        done
        wait
             


一个c类网段,254主机,1s内探测完毕.
代码:
kids@kids-virtual-machine:~/桌面$ time sh fping.sh
192.168.31.1 is up
192.168.31.22 is up
192.168.31.216 is up
192.168.31.137 is up

real   0m0.407s
user   0m0.306s
sys   0m0.177s
kids@kids-virtual-machine:~/桌面$


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

当前时区为 UTC + 8 小时


在线用户

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


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

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

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