加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

bash – 如何在一个命令中卷曲多个资源?

发布时间:2020-12-15 22:18:57 所属栏目:安全 来源:网络整理
导读:说我试图有效地下载一套50个讲义.这些注释位于大学网站的prof子目录中.第45讲的笔记在lect45子目录中,作为标题为lect45.pdf的pdf.我得到的第一个pdf如下: curl -O http://www.university.edu/~prof/lect1/lect1.pdf 如何使用cURL和bash有效地获取所有50个音
说我试图有效地下载一套50个讲义.这些注释位于大学网站的prof子目录中.第45讲的笔记在lect45子目录中,作为标题为lect45.pdf的pdf.我得到的第一个pdf如下:

curl -O http://www.university.edu/~prof/lect1/lect1.pdf

如何使用cURL和bash有效地获取所有50个音符?我试图从命令行,而不是通过Python / Ruby / Perl脚本.我知道下面会产生很多404s:

curl -O http://www.university.edu/~prof/lect{1..50}/lect{1..50}.pdf

什么会更好?我更喜欢优雅的单线圈.

解决方法

在几个过程中执行:

for i in {1..50}
do
    curl -O http://www.university.edu/~prof/lect$i/lect$i.pdf &
done

或作为一个单行(只是一个不同的格式):

for i in {1..50}; do curl -O http://www.university.edu/~prof/lect$i/lect$i.pdf & done

&使所有进程并行运行.

不要被输出吓到; shell告诉你已经启动了50个进程,这是很多垃圾邮件.稍后它会告诉你他们中的每一个他们终止了.再次输出很多.

你可能不希望并行运行所有50个;-)

编辑:

使用{1..50}两次的示例会生成数字矩阵.请参阅echo {1..3} / {1..3}以查看我的意思.我猜这种方式可以创造出很多404.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读