【问题标题】:How can I pipe wget/curl output to check whether it contains specific word?如何管道 wget/curl 输出以检查它是否包含特定单词?
【发布时间】:2013-05-07 15:16:23
【问题描述】:

我正在尝试从网站下载大量连续文件,但我只需要那些包含特定单词的文件。我现在在做什么:我正在下载这样的所有文件:

wget http://host/file/{0..100000}.html

我需要检查输出,如果它包含“短语”,请将其下载到我的硬盘驱动器。请指出正确的方向。

【问题讨论】:

    标签: curl sed awk grep wget


    【解决方案1】:

    您无法在不下载的情况下检查文件/网页的内容——即使只是临时下载。一个简单的解决方法是使用一个脚本来下载文件,检查任何关键字,如果存在,则保留文件,否则将其丢弃。像这样的:

    for i in `seq 100000`; 
    do 
       wget http://host/file/$i.html
       grep KEYWORD $i.html
       if [[ $? -eq 0 ]] 
       then
           echo "File $i.html was kept" 
       else
           echo "File $i.html will be deleted"
           rm -f $i.html
       fi
    done; 
    

    **作为免责声明:我没有测试上面的脚本,但它应该是一个足够好的示例。

    【讨论】:

      猜你喜欢
      • 2017-11-10
      • 2012-01-08
      • 1970-01-01
      • 2016-08-19
      • 2011-10-28
      • 2011-05-20
      相关资源
      最近更新 更多