Crear tarea programada desde un archivo xml por archivo por lotes

Crear tarea programada desde un archivo xml por archivo por lotes

Tengo una tarea programada en mi máquina de prueba. La máquina de prueba es win 7. Exporto la tarea en xml y estoy intentando crear una nueva tarea programada similar, ya que tendré que crear la misma tarea programada en más de 500 máquinas.

Estoy pensando en crear un archivo por lotes para programar la tarea. Como la mayoría de las máquinas están en el mismo dominio. Entonces, planeo usar una cuenta de servicio para la autenticación.

A continuación se muestra el archivo xml. Esto está funcionando bien en este momento desde el programador de tareas.

<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.3" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
  <RegistrationInfo>
    <Date>2016-01-26T19:26:36.6011086</Date>
    <Author>test\404</Author>
    <Description>Testing Tasks</Description>
  </RegistrationInfo>
  <Triggers>
    <CalendarTrigger>
      <Repetition>
        <Interval>PT1H</Interval>
        <Duration>P1D</Duration>
        <StopAtDurationEnd>false</StopAtDurationEnd>
      </Repetition>
      <StartBoundary>2016-01-26T19:25:42.7621086</StartBoundary>
      <EndBoundary>2017-01-26T19:25:43.0101086</EndBoundary>
      <Enabled>true</Enabled>
      <ScheduleByDay>
        <DaysInterval>1</DaysInterval>
      </ScheduleByDay>
    </CalendarTrigger>
  </Triggers>
  <Principals>
    <Principal id="Author">
      <UserId>test\404</UserId>
      <LogonType>Password</LogonType>
      <RunLevel>LeastPrivilege</RunLevel>
    </Principal>
  </Principals>
  <Settings>
    <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
    <DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>
    <StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
    <AllowHardTerminate>true</AllowHardTerminate>
    <StartWhenAvailable>false</StartWhenAvailable>
    <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
    <IdleSettings>
      <StopOnIdleEnd>true</StopOnIdleEnd>
      <RestartOnIdle>false</RestartOnIdle>
    </IdleSettings>
    <AllowStartOnDemand>true</AllowStartOnDemand>
    <Enabled>true</Enabled>
    <Hidden>false</Hidden>
    <RunOnlyIfIdle>false</RunOnlyIfIdle>
    <DisallowStartOnRemoteAppSession>false</DisallowStartOnRemoteAppSession>
    <UseUnifiedSchedulingEngine>false</UseUnifiedSchedulingEngine>
    <WakeToRun>false</WakeToRun>
    <ExecutionTimeLimit>PT1H</ExecutionTimeLimit>
    <Priority>7</Priority>
  </Settings>
  <Actions Context="Author">
    <Exec>
      <Command>copier.bat</Command>
      <WorkingDirectory>D:\test\</WorkingDirectory>
    </Exec>
  </Actions>
</Task>

Cuando intento crear una tarea programada similar usando el siguiente comando.

schtasks /create /tn "alarm3" /xml "Test Task.xml"

me sale error ERROR: Error de inicio de sesión: nombre de usuario desconocido o contraseña incorrecta.

Quiero saber cómo puedo crear una tarea programada utilizando un archivo por lotes. La tarea programada debe ser compatible paraGanar 2003aganar servidor 2012.

Gracias por tu tiempo.

Respuesta1

Puede utilizar schtasksy proporcionar las credenciales de usuario de la tarea. Lo uso regularmente en mis scripts de PowerShell.

schtasks.exe /create /s NAMEOFCOMPUTER /ru DOMAIN\USER /rp PASSWORD /tn NAMEOFTASK' /XML PATHTOXMLFILE

información relacionada