2008-09-28 13 views
6

¿Alguien ha tenido algún requisito reciente para programar tareas automáticas de estilo de lote de DOS en un cuadro de Windows?Actualización de archivos por lotes de DOS para Windows

Tengo algo de automatización que hacer y prefiero no sentarme y escribir una pila de archivos .BAT en el Bloc de notas si hay una mejor manera de automatizar estas tareas: mover principalmente archivos en ciertas condiciones de fecha y hora , así como activar las aplicaciones de Windows antes y después de mover los archivos.

Estoy pensando en la línea de un IDE que tiene todos los comandos de DOS 'disponibles' para el editor con la comprobación de sintaxis del parámetro correcto. ¿Hay algo como esto por ahí, o debería resolver este problema con algo más que archivos .BAT?

Respuesta

3

Prueba Python.

6

Para una simple automatización de Windows más allá de los archivos BAT, VBScript y Powershell merecen la pena verla. Si se pregunta por dónde empezar primero, el Programador de tareas de VBScript + Windows sería el primer lugar en el que comenzaría. Copiar un archivo con VBS puede ser tan simple como:

Dim objFSO 

Set objFSO = CreateObject ("Scripting.FileSystemObject") 
If objFSO.FileExists("C:\source\your_file.txt") Then 
    objFSO.CopyFile "C:\source\your_file.txt", "C:\destination\your_file.txt" 
EndIf 
+0

Ambas opciones pueden ir más allá de la simple automatización ... – Joey

0

VBScript/WSH es en realidad lo que Microsoft quiere que uses - por desgracia, he escrito algunas de esas y no es agradable -

Estoy totalmente de acuerdo con Mikael: si sabes qué sistemas ejecutarán los scripts y puedes instalar intérpretes en ellos, ve con un lenguaje de scripts como Python o Ruby

Por supuesto, depende del tipo de automatización que necesites hacer - Si está jugando con la configuración del sistema operativo o Active Directory, vaya con WSH, pero para el mantenimiento de archivos promedio, use Python o Ru por

1

Recomendaría Python sobre Ruby como un lenguaje de script de Windows. El soporte de Windows de Python es mucho más maduro que el de Ruby.

4

Definitivamente PowerShell. Es el nuevo shell de Microsofts con muchas posibilidades interesantes y gran extensibilidad.

1

Hay un IDE para Powershell aquí:

PowerGUI

0

Aunque esto no es exactamente lo que está buscando, me gustaría optar por Perl. Al carecer de la GUI, Perl le permitiría completar su tarea rápidamente, y sus características de "pegamento" serían útiles en futuras tareas que pueda tener. Además, si un día tendrá que hacer cosas similares en otro SO (que no es Windows), PowerShell podría no estar disponible, y su conocimiento en Perl sería útil.

Aparte de eso, el hermano más cercano de Perl en Windows es definitivamente PowerShell.

2

Utilizo AutoIt para esto ya que PowerShell no está disponible por defecto en todas las máquinas. AutoIt ofrece un lenguaje simple con muchos códigos predeterminados que puede volver a usar. AutoIt puede compilar a .exe.No estoy seguro de qué es "Mover archivos bajo una condición determinada" pero una vez escribí Robocopy Controller script (usando AutoIt) a través del cual puede configurar un script de copia que se pasará a Robocopy.exe ("copia de archivo robusta"). - un programa de copia que se puede descargar de Microsoft y se incluye por defecto con Windows Vista para reemplazar xcopy). Tal vez este libre guión mío puede ser de ayuda.

+0

Actualmente no compila, simplemente agrega el archivo AutoIt a un .exe, de forma similar a algunos programas de compresión. –

Cuestiones relacionadas