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

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

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

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

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

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

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

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

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

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

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

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



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

#!/bin/bash
for content in cat downloadUrl.txt
do
{
    wget $content
}&
done
  1. 执行脚本如下:
sh download.sh

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

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

Original: https://www.cnblogs.com/zjdxr-up/p/16428922.html
Author: 香吧香
Title: shell 同时执行多任务下载视频

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/612250/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 每天一个 HTTP 状态码 201

    201 Created 表示请求成功,在服务器端创建了一个新资源… 201 Created 201 Created 表示客户端的请求已经成功完成,结果是创建了一个新资源…

    Linux 2023年6月7日
    0119
  • Spring中毒太深,离开了Spring,我居然连最基本的接口都不会写了¯_(ツ)_/¯

    前言 众所周知,Java必学的框架其中就是SSM,Spring已经融入了每个开发人员的生活,成为了不可或缺的一份子。 随着 Spring 的崛起以及其功能的完善,现在可能绝大部分项…

    Linux 2023年6月13日
    078
  • 爱快在PVE下不定时反复重启死机的解决方法

    太长不看版本: 爱快3.6.X在PVE乃至于ESXI下都存在一定的兼容问题 ! 详细情况: 如题,使用爱快版本为3.6.3 x64 Build20220407113364,底层虚拟…

    Linux 2023年6月13日
    0165
  • boot issue

    Q:生产过程中不小心把 boot文件删除了 ,或者升级kenerl时发现版本不兼容,需要回退,此时没有快照备份情况如何操作? A:boot 主要文件是内核和grub引导文件 1.进…

    Linux 2023年6月6日
    0109
  • 通过示例学习PYTORCH

    核心是:PyTorch提供了两个主要的特性: 一个n维的Tensor,与Numpy相似但可以在GPU上运行 构建和训练神经网络的自动微分 我们将使用一个三阶多项式拟合 (y=sin…

    Linux 2023年6月14日
    0104
  • 清空Redis集群所有节点的数据工具

    FLUSHALL和FLUSHDB是单机命令,所以清空集群需要在所有Master节点上均执行一次。下载:https://github.com/eyjian/redis-tools/b…

    Linux 2023年5月28日
    096
  • 常见Git命令汇总

    前言 最近,有朋友私信让我就 git 使用做篇文章分享,分享一下我在日常工作中是如何使用 git的。我当场就收费两包辣条,最后讨价还价,…

    Linux 2023年6月13日
    087
  • 理想汽车 x JuiceFS:从 Hadoop 到云原生的演进与思考

    理想汽车在 Hadoop 时代的技术架构 首先简单回顾下大数据技术的发展,基于我个人的理解,将大数据的发展分了4个时期: 第一个时期: 2006 年到 2008 年。2008 年左…

    Linux 2023年6月14日
    088
  • 防火墙NAT配置与DHCP下发

    该实验如果有做的不足的地方请见谅 实验目标: 按要求划分区域,公司内部办公区为trust,服务器区为dmz,外部网络为untrust。 PC1和PC2为公司内部办公区,需要从防火墙…

    Linux 2023年6月7日
    0104
  • 如何设置redis中hash的field的expire ?

    redis 127.0.0.1:6379> hset expire:me name tom (integer) 0 redis 127.0.0.1:6379> hget…

    Linux 2023年5月28日
    0106
  • Java对象序列化和反序列化

    Java类的序列化和反序列化 序列化:指将对象转换为字节序列的过程,也就是将对象的信息转换成文件保存。 反序列化:将字节序列转换成目标对象的过程,也就是读取文件,并转换为对象。 几…

    Linux 2023年6月14日
    099
  • WPF 修复 ContextMenu 在开启 PerMonitorV2 后所用 DPI 错误

    本文告诉大家如何修复 WPF 的 ContextMenu 在开启 PerMonitorV2 之后,在双屏不同的 DPI 的设备上,在副屏弹出的 ContextMenu 使用了主屏的…

    Linux 2023年6月6日
    081
  • 常用命令-watch

    每隔一秒高亮显示网络链接数的变化情况 每隔一秒高亮显示http链接数的变化情况 实时查看模拟攻击客户机建立起来的连接数 监测当前目录中 scf 的文件的变化 10秒一次输出系统的平…

    Linux 2023年6月6日
    0107
  • shell之常用的一些命令

    前言 自我感觉学习shell要常用man,–help这样挺方便去写的,光靠熟练远远不够的 bash;gutter:false;</p> <h1>!/bin…

    Linux 2023年6月8日
    087
  • Makefile调试和内核定时器的使用

    这周水一篇博客,先把量搞上去。 Makefile简明教程 常用函数 条件函数 $(if condition,then-part[,else-part]) 编写驱动的Makefile…

    Linux 2023年6月7日
    0121
  • Linux指令

    Linux 目录简介/bin Binary的缩写,存放最经常使用的命令/sbin s代表Super user,存放系统管理员使用的系统管理程序/home 存放普通用户的主目录,每个…

    Linux 2023年5月27日
    089
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球