在 Assets/App/Editor 路径下新建 ClearEmptyFolder 文件夹,并在该文件夹下新建文件 EmptyFolderClear.cs
using System.IO;
using UnityEditor;
using UnityEngine;
namespace App.Editor {
public class EmptyFolderClear : EditorWindow {
[MenuItem("Tools/清除空文件夹")]
private static void ClearAll() {
ClearEmptyFolder(Application.dataPath);
}
private static void ClearEmptyFolder(string folderPath) {
DirectoryInfo dir = new DirectoryInfo(folderPath);
DirectoryInfo[] subDirs = dir.GetDirectories("*.*", SearchOption.AllDirectories);
foreach (DirectoryInfo subDir in subDirs) {
FileSystemInfo[] subFiles = subDir.GetFileSystemInfos();
if (subFiles.Length == 0) {
File.Delete(subDir.FullName + ".meta");
subDir.Delete();
}
}
AssetDatabase.Refresh();
}
}
}