AHK自动整理桌面脚本

Mar 31, 2020 20:51 · 325 words · 1 minute read

a:=[]
;FileSelectFolder,folder
folder:="C:\Users\Administrator\Desktop"
Loop,%folder%\*.*
{
temp:=folder . "\files\" . "." . A_LoopFileExt
if not a.HasKey(%A_LoopFileExt%)
	FileCreateDir,%temp%
	a.Push(%A_LoopFileExt%)
FileMove,%A_LoopFileFullPath%,%temp%
}
/*
创建数组a
选择文件夹并把路径存储到folder
循环文件夹里所有的文件(*.*作为通配符可以匹配所有文件)
	设置临时变量temp为分类文件夹的完整路径
	如果数组a里没有当前文件的扩展名
		创建分类文件夹
		并把扩展名添加到数组a中
	把文件移动到分类文件夹中

思路;
创建数组a,用于存储文件夹下所有出现过的文件扩展名,一开始为空。
然后循环文件夹下所有的文件,取得它们的扩展名,并判断是否已经创建了扩展名文件夹。
判断依据是,a数组为空,创建文件夹后,下一步就会把那类的文件扩展名添加到数组a之中。
如果数组a里没有该扩展名,说明没有创建该文件夹。
做完以上步骤后,肯定都有了各种扩展名的文件夹,接下来就把它们移动到对应的文件夹里。

by @SciFX
/*

分享   tweet   Share   微博