我正在PowerShell v1中编写一个批处理脚本,它将按计划运行,每分钟说一次.不可避免地,有一段时间工作需要超过1分钟才能完成,现在我们有两个脚本运行实例,然后可能有3个等等……
我希望通过让脚本本身检查是否有自己的实例已经在运行来避免这种情况,如果是,则脚本退出.
我在Linux上用其他语言完成了这个,但从未在Windows上使用PowerShell完成此操作.
例如在PHP中我可以做类似的事情:
exec("ps auxwww|grep mybatchscript.PHP|grep -v grep",$output); if($output){exit;}
在PowerShell v1中有这样的东西吗?我还没有遇到过这样的事情.
在这些常见模式中,哪一个最常用于经常运行的PowerShell脚本?
>锁定文件
> OS任务计划程序
>具有睡眠间隔的无限循环