美文网首页
flutter图片处理文件夹

flutter图片处理文件夹

作者: liboxiang | 来源:发表于2019-10-08 23:27 被阅读0次

    自动处理2倍图和3倍图以适用于flutter

    #! /bin/bash
    
    #用于修改图片名称及移动文件夹以适用于flutter
    #用法举例,终端跑如下命令:脚本路径 图片文件夹路径
    #/Users/sunfly/Desktop/changeName.sh /Users/sunfly/Documents/smart_life_app/images
    function read_dir(){
            for file in `ls $1`       #注意此处这是两个反引号,表示运行系统命令
            do
                if [ -d $1"/"$file ]  #注意此处之间一定要加上空格,否则会报错
                then
                    if [[ $file == "2.0x" ]] || [[ $file == "3.0x" ]]
                    then
                        echo "2.0x或者3.0x文件夹"
                    else
                        read_dir $1"/"$file
                    fi
                else 
                    if [[ $file == *@2x* ]]
                    then
                    #2倍图处理
                        if [ -f $1"/"${file/@2x/} ]
                        then
                            if [ ! -d $1"/2.0x" ]  
                            then
                                #不存在2.0x文件夹则创建
                                mkdir $1"/2.0x"
                            fi
                            #存在一倍图,将二倍图放到2.0x文件夹
                            mv $1"/"$file $1"/2.0x/"${file/@2x/}
                        else
                            #不存在一倍图,将二倍图改为一倍图用
                            mv $1"/"$file $1"/"${file/@2x/}
                        fi
                        # echo "2x = "$file
                    else 
                    #3倍图
                        if [[ $file == *@3x* ]]
                        then
                            echo "3x = "$file
                            if [ -f $1"/"${file/@3x/} ] || [ -f $1"/"${file/@3x/@2x} ]
                            then
                                #存在一倍图或者二倍图
                                if [ ! -d $1"/3.0x" ]  
                                then
                                #不存在2.0x文件夹则创建
                                    mkdir $1"/3.0x"
                                fi
                                #存在一倍图或者二倍图,将三倍图放到3.0x文件夹
                                mv $1"/"$file $1"/3.0x/"${file/@3x/}
                            else
                                #不存在一倍图或者二倍图,将三倍图改为一倍图用
                                mv $1"/"$file $1"/"${file/@3x/}
                            fi
                        fi
                    fi
                    #  if [ ${file##*.} = 'png' ]
                    #  then 
                    #    #在此处处理文件即可
                    #    subStr="@*x"
                    #     echo ${file/@2x/}
                    #     # cp $1"/"$file  "/Users/sunfly/Desktop/image/"$file
                    #  fi
                fi
            done
        }   
    #读取第一个参数
    read_dir $1
    
    

    相关文章

      网友评论

          本文标题:flutter图片处理文件夹

          本文链接:https://www.haomeiwen.com/subject/xhmhyctx.html