0

我制作了一个将数据写入一个文本文件的 powershell 脚本。

脚本正在使用 3rd 方软件部署程序执行。好事是当计算机在线并执行作业时它会等待,坏事是当脚本在已经 100 多台在线计算机上执行时,我只从 8 台计算机和 2 个空行获得信息。

这很可能是因为 powershell 脚本在 100 多台计算机上同时运行并且该文件正在使用中。

无法在第 3 方软件部署程序中使用“等待在第一台计算机上执行脚本”。

问题在于线路 -

$srvpath = [path to text file]
$computer = "Name of computer"
$data = "Some data not more than ~30 characters"
Out-File -FilePath $srvpath -InputObject "$computer - $data" -Append

我目前的解决方案是分别为每台计算机制作临时文件,然后启动第二个脚本,该脚本将读取这些文件写入一个文件(按字母顺序排序)并删除临时文件。

但我想坚持使用一个脚本,因此是否可以检查数据是否已写入文件或检查文本文件是否已在使用中然后等待?避免额外的空行也很好,但这不是一个大问题。

4

0 回答 0