gpt4 book ai didi

linux - 使用 Perl 在 Unix/Linux 环境中下载和处理文件的管道

转载 作者:太空狗 更新时间:2023-10-29 11:48:05 24 4
gpt4 key购买 nike

我有一个要下载文件的 URL 列表:

http://somedomain.com/foo1.gz
http://somedomain.com/foo2.gz
http://somedomain.com/foo3.gz

我想对每个文件执行以下操作:

  1. 下载 foo1,2.. 与 wgetnohup 并行。
  2. 每次完成下载时使用 myscript.sh 处理它们

我的是这样的:

#! /usr/bin/perl

@files = glob("foo*.gz");

foreach $file (@files) {
my $downurls = "http://somedomain.com/".$file;
system("nohup wget $file &");
system("./myscript.sh $file >> output.txt");
}

问题是我无法告诉上面的管道文件何时完成下载。所以现在 myscript.sh 没有正确执行。

实现这一目标的正确方法是什么?

最佳答案

为什么要使用 perl 来做这件事。使用 bash 代替。以下只是一个示例。

#!/bin/bash

for file in foo1 foo2 foo3
do
wget http://samedomain.com/$file.gz .

if [ -f $file.gz ];
then
./myscript.sh $file.gz >> output.txt
fi
done

关于linux - 使用 Perl 在 Unix/Linux 环境中下载和处理文件的管道,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2650947/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com