使用PowerShell自动放置Android图片资源

Android项目中,需要将不同分辨率的图片资源(drawable)放到对应的文件夹中。但是AI批量导出图片的时候,只能在文件名后面加后缀,不能将不同分辨率的图片放到不同的文件夹中。使用PowerShell脚本可以快速将不同后缀的文件放到对应的文件夹中,并去除文件名后缀。

脚本功能:将当前目录下(不包括子目录)包含xxxhdpi,xxhdpi,xhdpi,hdpi,mdpi,ldpi后缀的文件放到xxxhdpi,xxhdpi等文件夹中并删除后缀。

提示:若图片文件名有x结尾的情况,可能会发生误判。

$files = Get-ChildItem -File
$directories = "xxxhdpi", "xxhdpi", "xhdpi", "hdpi", "mdpi", "ldpi"
foreach ($dir in $directories)
{
    New-Item -Path $dir -ItemType Directory
}
foreach ($file in $files)
{
    foreach ($dir in $directories)
    {
        if ($file.Name -like ("*" + $dir + "*"))
        {
            Move-Item $file.Name -Destination $dir
            Rename-Item ([System.IO.Path]::Combine($dir, $file)) -NewName ($file.Name -replace $dir,"")
            break
        }
    }
}