如何在自清洁虚拟机上自动运行批处理文件?

如何在自清洁虚拟机上自动运行批处理文件?

我正在尝试学习一点测试自动化。我知道一些批处理文件,我正在复习我的“电源外壳“技能,而且——谁知道呢——bash从长远来看,我甚至可能最终会用到一些技能。

我有一台自清洁虚拟机,在用户注销后,它会被彻底清除。下次用户登录时,注册表和启动文件夹会被清除。我所能做的就是手动双击桌面图标,以启动一些我经常使用的静态软件应用程序。

批处理文件部分我已经自己完成了。我正在启用本地执行“电源外壳“脚本,然后运行一个改变一些桌面图标的脚本。这是Change_Desktop_Icons.BAT批处理文件现在的样子:

批处理文件

这 ”电源外壳“部分内容已由本网站上的一些优秀人士进行了很好的调试,对于他们的帮助,我再次表示感谢。我每天都在这里学到很多东西。

这是“电源外壳“ 脚本:

PowerShell 脚本

bash部分尚未写完。

现在,问题是我总是必须手动双击The_Start-Me-Up_Cake桌面图标。手动双击并执行脚本后,桌面图标发生了很好的变化,如下图所示。

桌面图标

我现在正在寻找的是以某种方式自动化手动双击。我知道“任务计划程序“静态软件应用程序可能在这方面有用,但我不知道如何完全使用。

这是双击The_Start-Me-Up_Cake桌面图标的输出:

双击的输出

虚拟机设置得相当严格。我不允许使用某些静态软件应用程序,例如“组策略“。

此时,我已将这个问题发布在“堆栈溢出“网站。显然,由于它与软件开发过程关系不大,而且更适合一般个人电脑的使用,所以这个问题已经被关闭了。

我在这里粘贴了我收到的关于这个问题的两条评论。

  • 添加计划任务以在注销时运行 PowerShell 脚本。有很多文章演示了如何执行此操作 – Scepticalist 昨天

  • 我同意@Scepticalist 的观点。另外,你的虚拟机上没有公共文件夹吗?你也可以把它放进去,让它在登录/启动时运行 – Abraham Zinala 昨天

为了回复评论者,我在问题中附加了以下两条评论:

  • 不幸的是,@Scepticalist,我似乎无权在此虚拟机上创建计划任务。我检查了它的用户名,它没有问题。我复制粘贴了它的密码,所以我确信它没问题。导致这种奇怪行为发生的唯一原因可能是系统管理团队可能在不久前实施了某种组策略,这些策略目前禁止这些虚拟机的用户创建计划任务。 – Mihai Dobrescu 22 小时前

  • 确实,@Abraham Zinala,有几个目录我仍然可以继续使用,而且在注销/登录过程之后,它们仍然完好无损。桌面文件夹是\\<server>.<domain>.eu\<share>$\<path>\Desktop\。我还试图保留Y:\Digitization\GitHub\Shell-Scripting\文件夹中的 shell 脚本。我不知道如何在这两个目录中放置计划任务,但 - 首先 - 显然我根本无法在此虚拟机上创建任何类型的计划任务。– Mihai Dobrescu 22 小时前

在我最近两次评论之后,令我惊讶的是,我设法以某种方式创建了计划任务。我无法解释为什么这次它没有要求我提供我的凭据。它只是创建并保存了它。

我已经测试过了,它运行Change_Desktop_Icons.BAT批处理文件很好。问题是,当我想运行它时,用户登录时并没有发生同样的事情。

Y:\Digitization\GitHub\Shell-Scripting\例如,有没有办法将计划任务保存在文件夹中?或者还有其他方法可以解决这个问题?

答案1

您几乎已经掌握了!要在登录时运行计划任务,请从“创建基本任务”向导中的触发器列表中选择该选项:

在此处输入图片描述

我建议直接从任务计划程序运行 powershell,而不是使用批处理脚本。以下是向导中要遵循的步骤:

  • 操作:启动程序
  • 程序:浏览到 Powershell.exe,通常在C:\Windows\System32\WindowsPowerShell\v1.0\
  • 参数:复制并粘贴以下文本。必须全部为一行:
-ExecutionPolicy RemoteSigned -f Y:\Digitization\Powershell\The_My_Computer_Desktop_Icon\Change_Desktop_Icons.PS1

请注意,如果 IT 管理员脾气暴躁,某些脚本和自动化功能可能会给你带来麻烦

相关内容