ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

shell 同时执行多任务下载视频

2022-06-30 23:03:40  阅读:139  来源: 互联网

标签:视频 shell co mixkit https 多任务 下载


本文为博主原创,转载请注明出处:

  shell 脚本不支持多线程,但我们需要用shell 脚本同时跑多个任务时怎么让这些任务并发同时进行,可以采用在每个任务 后面 添加一个  & ,让其在后台运行,相互之间不影响;

   这边的使用场景是 需要用shell 脚本同时下载很多个视频,如果用shell 脚本一个一个进行下载则很慢,所以考虑用shell 的& 同时执行下载任务;

  1. 寻找一个可无限下载视频的地址;由于 腾讯视频,优酷视频等视频下载时,都需要登录,通过翻阅各种网站,

    找到一个 可以无限下载视频的网址:https://mixkit.co/free-stock-video/ ; 点开该网址,随便点击打开一个网站,如下所示,找到视频地址:

                      

   通过界面找寻到一个视频下载链接 如下: https://assets.mixkit.co/videos/preview/mixkit-countryside-meadow-4077-large.mp4

   查看很多视频之后,发现这个网站对同一个分类的视频,按照序号递增的方式进行命名的,所以只需要找到 一个文件下载路径之后,就可以修改路径中的数字,获得新的下载链接进行下载;

  

  2. 编写shell 脚本进行下载:

    思路:将下载的链接放入到一个文件中,shell 脚本不断遍历文件中的url 链接,进行后台同时并发下载:

    创建 downloadUrl.txt ,并放入 文件路径:

https://assets.mixkit.co/videos/preview/mixkit-countryside-meadow-4074-large.mp4
https://assets.mixkit.co/videos/preview/mixkit-countryside-meadow-4075-large.mp4
https://assets.mixkit.co/videos/preview/mixkit-countryside-meadow-4076-large.mp4
https://assets.mixkit.co/videos/preview/mixkit-countryside-meadow-4077-large.mp4

    创建 download.sh , 脚本与 downloadUrl.txt 位于同一个目录,脚本内容如下:

#!/bin/bash
for content in `cat downloadUrl.txt`
do
{
    wget $content
}&
done

  3. 执行脚本如下:

sh download.sh

  

 

   运行之后就会发现,会同时执行下载任务,从而实现并发下载

  

 

标签:视频,shell,co,mixkit,https,多任务,下载
来源: https://www.cnblogs.com/zjdxr-up/p/16428922.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有