代码之家  ›  专栏  ›  技术社区  ›  Allan Santos

如何在Linux(mint/ubuntu)中对目录进行pngcrush?

  •  0
  • Allan Santos  · 技术社区  · 8 年前

    我有一个目录树,有许多图像文件,然后我必须移动到另一个目录树。但在这个命运目录中,我的png文件必须被压缩。

    例如:

    SOURE目录树:

    ./model/layout/img
    ./model/layout/img/log
    ./model/layout/img/errs
    ./model/layout/img/commons
    

    (包含多种图像文件)

    目标目录树:

    ./app/img
    ./app/img/log
    ./app/img/errs
    ./app/img/commons
    

    有人能解决这个问题吗?

    1 回复  |  直到 8 年前
        1
  •  0
  •   Allan Santos    8 年前

    我在这个网站上找到了一个解决方案。 https://davidwalsh.name/pngcrush-directory .

    我只需要稍微修改一下脚本。

    #!/bin/sh
    
    SRC_DIR=./model/layout/img/
    DST_DIR=./app/img/
    
    rm -rf $DST_DIR
    cp -R  $SRC_DIR $DST_DIR
    
    for png in `find $DST_DIR -name "*.png"`;
    do
        echo "crushing $png"    
        pngcrush -reduce -brute "$png" temp.png
    
        mv -f temp.png $png
    done;
    
    推荐文章