【问题标题】:How to sequentially execute a command on every file in a directory?如何对目录中的每个文件顺序执行命令?
【发布时间】:2013-04-05 00:45:32
【问题描述】:

我有一个目录,我正在通过 cron 轮询新的上传内容,我正在 在每次上传时运行一系列脚本。

程序的一部分使用上传文件的名称从网络检索图像。

图像以通用名称 image.png 保存,然后被发送到下一个脚本进行更多处理。

只制作一张图片,所以如果有 5 个新上传的文件,仍然只制作一张图片。

如何构建代码/脚本,以便我在 3 个不同脚本中拥有的程序的完整周期一次只在一个文件上运行,换句话说,循环遍历目录并在每个文件上运行程序顺序。

我只是想保留正在制作的 1 个图像文件的结构,但正在处理所有上传。

           shopt -s nullglob

           for file in /home/yt/box/moremusic/youtube/*;
           do
           python /home/yt/ytimage.py $file;
           /home/yt/uploadyt;
           done;

           shopt -u nullglob

我在 /home/yt/box/moremusic/youtube/ 中使用 3 个文件尝试了该脚本 仅检索到 1 张图片。

我怎样才能实现我的目标或至少走上正确的道路? 或者实际上我怎样才能并行处理所有上传的文件并且仍然只有一个图像文件。

【问题讨论】:

    标签: bash shell loops scripting


    【解决方案1】:

    尝试 bash 循环:

    ls -1 | while read file; do
        echo $file;
    done;
    

    【讨论】:

      猜你喜欢
      • 2010-11-30
      • 1970-01-01
      • 2013-10-28
      • 1970-01-01
      • 2018-06-08
      • 2011-11-20
      • 1970-01-01
      • 1970-01-01
      • 2012-05-18
      相关资源
      最近更新 更多