1

我想要一个脚本来命令多台计算机来分解高度可分布的工作负载。为了分配工作量,我将一半的任务标签放在一个文件中,将一半的任务标签放在另一个文件中,然后我使用 google 驱动器分配给计算机(这就是我需要不同文件名的原因)。所以 C:\googledrive\task1.txt 和 C:\googledrive\task2.txt

自动热键命令如下所示:

loop, read, c:\googledrive\task*.txt

但它似乎没有读取 task1.txt,而是尝试将“task*.txt”读取为文字文件名,失败并结束循环。

想法?谢谢。

好的,尝试确保一切都以管理员权限运行(它们是)并确保文件存在(它们确实存在)并且文件路径中没有拼写错误(那里一切正常)。仍然不会真正读取文件。

有一点我没有在原始帖子中包含文件名的一部分实际上是一个变量,所以循环命令实际上是这样的:

 loop, read, c:\googledrive\%task%*.txt

我只是认为那一点无关紧要。

如果我为每台计算机保存不同的脚本,我可以继续用实际位替换通配符,它​​可以工作。

所以...我只是用文件中的计算机名称命名每个文件,并将命令更改为:

loop, read, c:\googledrive\%task%%A_ComputerName%.txt
4

1 回答 1

1

I do it this way....

Loop, C:\Temp\Source\*.txt ; Lists the next file as A_LoopFileName
{
    Loop, read, C:\Temp\Source\%A_LoopFileName% ; process current file
    {
        IfInString, A_LoopReadLine, abc
        {
        .......
        }
    }
}
于 2013-03-20T20:38:05.510 回答