如何通过使用powershell验证文本文件中的每一行来维护会话



下面是我的示例代码:

foreach ($var1 in (gc 1.txt)){
// my code logic
}

这里1.txt文件包含abc, xyz, pqr等值的列表。,如1.txt文件中有100行,以便逐一处理。在100行的处理完成后,中间有一个新的值被修改用于处理,现在的计数是101行。现在我需要重新启动脚本,应该处理新添加的值,而不是从头开始。
实际上,为了满足这个要求,我的项目中有数百行。你能告诉我实现这个目标的最好方法吗?

Thanks in advance

试试这个-保存文件的快照并将其与当前列表进行比较:

# Import values and list of completed updates
$ToUpdate  = Get-Content list.txt
$Completed = Get-Content completed.txt
# Take a snapshot for next run
Copy-Item -Path list.txt -Destination completed.txt -Force
# use Compare to determine which updates are new
$Unprocessed = Compare-Object $ToUpdate $Completed | 
where SideIndicator -EQ '<=' | 
Select -ExpandProperty InputObject
Foreach ($var1 in $Unprocessed) {
# Do Stuff
}

理想情况下,您希望根据实际目标而不是日志文件进行检查。如果您正在更新数据库/用户目录/杂货清单,请改为查询,否则您可能会遇到问题。如果有什么东西在你不注意的时候更新了目标怎么办?如果您的脚本出错并且实际上没有完成所有更新,该怎么办?要记住的事

最新更新