Autor
|
Tema: Averiguar dia de la semana [Batch] (Leído 32,833 veces)
|
0x0309
Desconectado
Mensajes: 215
|
genial, distintas soluciones, creo que me equivoqué, el comando que muestra la fecha en la ayuda en windows seven vista o en xp si lo instalas con el resource kit es: robocopy. Así: robocopy.exe | findstr "Started Inicio" rem para el comando en español e inglés
produce: Started : Thu Aug 27 13:46:29 2009
o Inicio: Thu Aug 27 13:46:29 2009
Con eso, ya puedes armar un código parseando con for /f.
|
|
« Última modificación: 28 Agosto 2009, 05:17 am por 0x0309 »
|
En línea
|
|
|
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
Como veo que ya esta solucionado .. te repondo a la pregunta que habías dejado antes... Pero tengo una duda... Las variables Wd y Wn... ¿que son? Wd = DatePart("WW" , Newdate) Wn = DatePart("Y" , Newdate) En estos momentos me arrojan 35 y 239 respectivamente. Wd representa la semana del año ... estamos en la semana 35 Wn representa el día del año ... vamos por el día 239 Saludos
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
kevlar
Desconectado
Mensajes: 27
|
Saludos a todos. Me gustaría que la solución en BAT fuera más simple, pero creo que es parte del arte de programar con archivos BAT. Por otra parte VBS nos lo hace fácil y sobre todo lo podemos usar con los archivo BAT. Estaba buscando información sobre DatePart y me encontré este enlace, esta muy interesante : http://ns7.webmasters.com/caspdoc/html/vbscript_datepart_function.htm
|
|
« Última modificación: 28 Agosto 2009, 15:48 pm por kevlar »
|
En línea
|
|
|
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
Es que vbs en la mayoría de los casos tiene funciones específicas para hacer cosas que en batch debes de crearte, además de que es fácil encontrar ayuda referente a sus funciones, ya que tiene parentezco con VB, y con ir a la MSDN se soluciona el tema (CASI siempre)
Ej Datepart: :http://msdn.microsoft.com/en-us/library/20ee97hz%28VS.80%29.aspx
Saludos
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
kevlar
Desconectado
Mensajes: 27
|
Tiene razón SEN-SEI Novlucker. Es solo que aún no se suficiente de la programación en BATCH. y me voy por el camino fácil
|
|
|
En línea
|
|
|
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
Te refieres a que vbs es el camino fácil? No es más fácil ... es que es un lenguaje versátil y por medio del cual haciendo uso de objetos puedes realizar cosas que en batch no podrías Saludos
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
kevlar
Desconectado
Mensajes: 27
|
Nop. Me refiero a que escribo menos código. Y si quiero entender todo lo que hace el archivo bat me toma más tiempo. , en cambio con la función ya hecha pues solo hay que usarla. Lo cual no quiere decir que no me guste hacer archivos bat, me ha sido bastante utilies, solo quisiera que Microsoft les agregara más gasolina y se pudieran hacer más cosas como con los shells de Unix, aunque aclaro el que yo no sepa como hacerlo en BAT no quiere decir que no se pueda.
|
|
|
En línea
|
|
|
|
Shinseiki86
Desconectado
Mensajes: 33
Loading...
|
Muchachos, al final me quedé con esta: :: Establece el dia de la semana (Dom=1 hasta Sab=7)*********** :setdia set vbsfile=%temp%\newdate.vbs echo Wscript.Echo weekday(now()) >%vbsfile% for /F %%A in ('cscript //nologo %vbsfile%') do set diaCod=%%A del /f /q %temp%\newdate.vbs goto setdiaok :: ************************************************************* Todas las ayudas que me dieron me sirvieron para aplicarlas en otros programas. Me encantó la formula para obtener el dia matematicamente, pero por comodidad (mucho codigo) me quedo con este. Gracias!
|
|
|
En línea
|
|
|
|
0x5d
|
Llegue tarde... @echo off FOR /F "tokens=2,4,6" %%A IN ('robocopy ^| find /i "Inicio"') DO (call :dia %%A %%B %%C) :dia if /i %1==Mon ( set dia=Lunes ) if /i %1==Tue ( set dia=Martes ) if /i %1==Wed ( set dia=Miercoles ) if /i %1==Thu ( set dia=Jueves ) if /i %1==Fri ( set dia=Viernes ) if /i %1==Sat ( set dia=Sabado ) if /i %1==Sun ( set dia=Domingo ) echo Dia: %dia%%2 %3 exit /b
Me base en el code anterior...
|
|
|
En línea
|
|
|
|
luisrosarior
Desconectado
Mensajes: 1
|
Saludos.
Con respecto a si funciona en Windows XP o no, la respuesta es que sí, y se puede conseguir el mismo resultado que Windows 2000, sólo debemos ir al Panel de control, Configuración regional y de idioma, y en "Estándares y formatos" cambiar el idioma a Inglés (Estados Unidos).
■ ■ ■ ■ DOM
V6DC13H1405LR
|
|
|
En línea
|
|
|
|
|
|