如下方式:
waitcopy:
Arrayz := []
Arrayd := []
vpnf = Z:\
vpnfb = Z:\Backup\
localf = D:\OOinterfaceFile\waittomove\
locald = D:\OOinterfaceFile\
f := FileExist("Z:\*.txt")
;如果 TXT 文件存在
if f = a
{
;txt 文件存在
loop Files, %vpnf%*.txt
{
;VPN 文件夹内的文件名写入数组 Arrayz
Arrayz.Insert(A_LoopFileName)
}
;VPN 文件夹内的 txt 文件复制到 localf
for index, value in Arrayz
{
FileCopy %vpnf%%value%, %localf%, 1
}
}
else
{
;txt 文件不存在
ExitApp
}
;对比两个文件夹的文件
contrast:
;localf 文件夹内的文件名写入数组 Arrayd
loop Files, %localf%*.txt
{
Arrayd.Insert(A_LoopFileName)
}
;vpn 文件夹内文件数量
l := Arrayz.Length()
;对比
loop, %l%
{
if (Arrayz[A_Index] != Arrayd[A_Index])
{
;两个文件夹内容不一样,重新复制
goto, waitcopy
}
}
;两个文件夹内容一样 localf 移动到 locald
FileMove %localf%%A_LoopFileName%, %locald%, 1
;vpnf 移动到 vpnfb
for index, value in Arrayz
{
FileMove %vpnf%%value%, %vpnfb%, 1
}
ExitApp