首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Shell脚本:创建新的bash进程

Shell脚本:创建新的bash进程
EN

Stack Overflow用户
提问于 2011-12-27 19:44:24
回答 2查看 2.2K关注 0票数 2

我正试着快速批量下载Youtube视频。我创建了一个文件videos.txt,其中每行有一个视频链接:

代码语言:javascript
运行
复制
http://www.youtube.com/watch?v=**********
http://www.youtube.com/watch?v=**********
http://www.youtube.com/watch?v=**********
...

我有一个shell脚本可以下载视频:

代码语言:javascript
运行
复制
cat videos.txt | while read line; do 
    echo $line
    youtube-dl $line
done

但是,我希望通过将每个youtube-dl命令分支到它自己的进程/终端窗口来加快进程的速度。如何为每个youtube-dl命令创建一个新的终端窗口/进程

注意:我尝试过用youtube-dl命令的前面加上/bin/bash -c,但是脚本很不稳定.它不会下载所有的视频。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-12-27 19:50:31

更改这一行:

代码语言:javascript
运行
复制
youtube-dl $line

代码语言:javascript
运行
复制
youtube-dl $line &

&在后台启动作业,允许父脚本继续。

但是,如果您有一个很长的urls列表要抓取,请小心。Youtube会因为你吸干他们的网站而皱眉,在你的系统上有太多的下载过程会使事情停止或彻底崩溃。

票数 1
EN

Stack Overflow用户

发布于 2011-12-27 19:55:39

Youtube有一节他们的服务条款(Youtube TOS,见5-B)专门禁止这样做。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8648592

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档