【问题标题】:guard-process optipng watch folder for new images新图像的保护进程 optipng 监视文件夹
【发布时间】:2012-02-16 19:31:06
【问题描述】:

大家好,我的守护进程无法正确处理,我正在尝试查看文件夹中的新图像,然后使用 optipng 压缩它们并使用另一个命令移动它们。

# Compress png
guard 'process', :name => 'Compress PNG', :command => 'optipng -o7 images/pre/*.png' do
 watch(/^images\/(.*)\.png/)
end

# Move png from pre to images
guard 'process', :name => 'Move png in pre to images root', :command => 'mv images/pre/*.png images/*.png' do
  watch(/^images\/pre\/(.*)\.png/)
end

第一个问题是当新图像添加到文件夹时不会触发。下一个问题是它似乎不喜欢 *.png。此外,它似乎在 optipng 完成之前移动了图像。

【问题讨论】:

    标签: ruby optimization guard


    【解决方案1】:

    据我了解,您想在 /images/pre 中观看新图像。当新图像到达时,压缩它们并将它们移动到 /images。您的第一个保护声明应如下所示

    guard 'process', :name => 'Compress PNG', :command => 'optipng -o7 images/pre/*.png' do
     watch(/^images\/pre\/(.*)\.png/) # Watch images/pre/*.png not images/*.png
    end
    

    要依次执行 2 个 Linux 命令,可以使用 && 或 ; (见here

    您可以如下更改命令并删除第二个保护语句

    :command => "optipng -o7 images/pre/*.png && mv images/pre/*.png images/*.png"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-22
      • 2015-07-09
      • 2021-08-08
      • 2014-12-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-06
      相关资源
      最近更新 更多