重新启动计算机并按住脚本


4

我正在运行一个Powershell脚本,该脚本需要在脚本中间重新启动。重新引导后,脚本正在执行一些命令(在重新引导之前无法执行!)。我正在使用Restart-Computer重启计算机,并且重启立即开始。但是,重启命令之后的第一个命令将被执行!

因此,重新启动已启动,但脚本仍在运行(几秒钟..)。有没有办法保存脚本,因此在计算机关闭时它不会继续?

Restart-Computer -Force
"This is some content" >> C:\Users\Me\Desktop\Log.txt

在上面的示例中,计算机将重新启动,但是还将创建文本文件(带有“这是某些内容”)。我想重新启动计算机,而不创建文本文件。因此无需继续执行脚本。现在,我正在使用Start-Sleep进行此操作,但是必须有更好的方法。

谢谢。


3
除非您正在执行某些操作以使其重新启动,否则脚本在重新启动后将不会重新启动。因此,只需在重启后取出所有代码即可。如果要使脚本在重新启动后重新启动脚本,则应使用指示重新启动后的命令行参数重新启动它,并根据该参数的存在执行代码。
EBGreen 2014年

1
您可以按照上面的建议进行操作,或者在重新启动时结束脚本并创建第二个脚本,并在重新启动后自动运行该脚本。 HKEY_LOCAL_MACHINE \ SOFTWARE \微软\的Windows \ CurrentVersion \ Run中 ,例如
cybernard

2
@Jente您有办法重新启动脚本,还是从重新启动行之后继续执行?无论哪种方式,最好将两者分别分成不同的文件/脚本。
2014年

2
是的,一定要将其拆分为两个单独的文件,或者将重新启动前的代码和重新启动后的代码放入函数中,然后根据命令行参数调用适当的函数。
EBGreen 2014年

1
我不知道是否需要两个单独的文件,但是脚本的两个行为应该由开关或参数分开。-RunAfterReboot在脚本本身中带有条件的开关就足够了。
培根咬2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.