【问题标题】:Turn .bat file into startup script when executed once [duplicate]执行一次时将.bat文件转换为启动脚本[重复]
【发布时间】:2020-07-27 06:36:37
【问题描述】:

是否可以让批处理文件在启动时运行,而无需在执行一次时手动将文件放入启动文件夹中?

【问题讨论】:

  • 这能回答你的问题吗? Run Batch File On Start-up
  • 任务计划程序、启动文件夹、注册表项、外部工具...太多选项可供选择
  • 如果你只想运行一次,你仍然可以在启动目录中放置一个快捷方式到批处理文件,(是的,没错,那个目录不适用于其他文件类型),并在完成时自行删除脚本。为此,请将脚本中的任何 Exit/GoTo :EOF 指令替换为 @(GoTo) 2>Nul & Del "%~f0"。如果您当前没有 Exit/GoTo :EOF 指令,只需添加 @(GoTo) 2>Nul & Del "%~f0" 作为新的最后一行。 请注意,此想法可能需要拥有所需的删除权限。

标签: batch-file startup


【解决方案1】:

我建议您在批处理文件中添加一个schtasks 条目,使用以下开关和参数:

schtasks ... /SC ONSTART ... /TR <batchfile> ...

这将创建一个计划任务,引用您的批处理文件(文件本身),并在启动时计划。

一个例子是:

schtasks /SC ONSTART /TR C:\MyDir\bin\LaunchMe.bat

【讨论】:

  • 其中的“...”是什么意思?
  • 也是 完整路径或只是 file.bat
  • @TheOntley:... 表示您可能会填写其他内容,例如 startdate、enddate,以防您感兴趣,但这取决于您。您也可以将此留空。至于 ,这是批处理文件的完整路径,类似于“C:\MyDir\bin\LaunchMe.bat”。我相应地编辑了我的答案。
  • @TheOntley:哎呀,对不起,我写了/TN,而它应该是/TR,我已经更正了我的答案。
  • 我通过在线查看命令和选项发现了这一点,尽管我使用了 schtasks create 并在 powershell 中对其进行了处理,这是必要的还是您提供的内容仍然有效,因为您的没有指定名字之类的
猜你喜欢
  • 1970-01-01
  • 2014-01-19
  • 1970-01-01
  • 2016-05-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多