微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

循环几个目录 AHK

如何解决循环几个目录 AHK

我需要从几个目录中获取 .csv 中的文件列表,我现在有了这个脚本,我只需要添加更多目录,这可能吗?

FileList := "File FullPath,Base name,TimeLastModified"
Loop,\\DEFRA1SPDB054\Exports\*.*,1
If SubStr(A_LoopFileTimeCreated,1,8) = SubStr(A_Now,8) ;
{
  FormatTime,last_time_modified,%A_LoopFileTimeModified%,MM/dd/yyyy HH:mm:ss
  FileList .= "`n" . A_LoopFileFullPath . "," . A_LoopFileName . "," . last_time_modified
}
FileAppend,%FileList%,FileList.csv
Run,excel.exe "FileList.csv"

解决方法

假设我正确理解了您的问题,您可以这样做,例如:

folders := "
(
C:\Users\User\Documents\My Cool Folder1
C:\Users\User\Documents\My Cool Folder2
C:\Users\User\Documents\My Cool Folder3
C:\Users\User\Documents\My Cool Folder4
)"

FileList := "File FullPath,Base name,TimeLastModified"

for each,folder in StrSplit(folders,"`n","`r")
{
    Loop,Files,% folder "\*.*",FR
    {
        if (SubStr(A_LoopFileTimeCreated,1,8) = SubStr(A_Now,8))
        {
            FormatTime,last_time_modified,% A_LoopFileTimeModified,% "MM/dd/yyyy HH:mm:ss"
            FileList .= "`n" A_LoopFileFullPath "," A_LoopFileName "," last_time_modified
        }
    }
}

FileAppend,% FileList,% "FileList.csv"
Run,% "excel.exe ""FileList.csv"""

我只是简单地在字符串 folders 中定义了一些文件夹(使用延续部分(docs)),然后遍历每个文件夹,将文件夹传递到文件循环中(docs).

此外,我从您的脚本中删除了旧语法/命令。
例如,您使用的是已弃用的文件循环,或者通过旧版 %variable% 等引用变量。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。