在Windows

时间:2017-02-14 06:13:45

标签: windows powershell cmd scripting windows-scripting

我正在开发我正在开发的某些软件的安装脚本。在远程服务器上安装软件需要在每次启动时运行某个启动脚本。

我正在写一个PowerShell脚本,所以我正在寻找一种从PowerShell创建启动脚本的方法 我准备好执行批处理文件我只需要在远程服务器的每次启动时运行它

我无法在Google上找到任何资源,因此我在这里询问是否有人可以取得这样的结果

3 个答案:

答案 0 :(得分:0)

您可以使用以下代码从PowerShell启动命令过程。用您自己的信息替换路径和文件。

C:Pathfile.bat

调用批处理文件后,您可以将其自定义为手头的任务。例如......

如果要捕获.bat文件的输出,可以使用:

$out = C:Pathfile.bat

如果要使用.bat文件启动进程,可以使用PowerShell启动进程cmdlet:

start-process C:Pathfile.bat

并且,如果您想控制cmd.exe,可以使用:

start-process "cmd.exe" "/c C:Pathfile.bat"

start-process cmdlet是标准的PowerShell cmdlet,因此任何人都可以使用它。 JAMS用户定期利用它并将其与PowerShell管理单元中的JAMS特定cmdlet相结合,为批处理文件添加智能自动化。

将其置于此路径中:

C:\Users\<user_name>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\startup.cmd

答案 1 :(得分:0)

要在远程服务器的每次启动时运行脚本,请在远程服务器上执行以下设置。

  1. 打开任务调度程序(Win + R并输入命令     “%windir%\ system32 \ taskschd.msc / s”
  2. 动作 - &gt;创建任务
  3. 在“常规”标签中选择所需选项
  4. 点击'触发器' - &gt;新建 - &gt;开始任务:选择'启动时' 来自下拉列表。
  5. 点击'操作' - &gt;新 - &gt;行动:'开始一个程序' - &gt;     设置:脚本的路径。
  6. 要配置第5点,您可以在谷歌上获得帮助。

答案 2 :(得分:0)

这是使用Powershell创建启动脚本的方法之一。这将创建一个启动脚本。每次重新启动计算机时,脚本都会执行

$TaskAction1 = New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument "-ExecutionPolicy Bypass -File C:\scripts\Config.ps1"
$TaskTrigger = New-ScheduledTaskTrigger -AtStartup
$TaskPrincipal = New-ScheduledTaskPrincipal -UserID "NT AUTHORITY\SYSTEM" -LogonType ServiceAccount -RunLevel Highest
Register-ScheduledTask -Action $TaskAction1 -Trigger $TaskTrigger -Principal $TaskPrincipal -TaskName "Config" -Description "Config Script"