Nombre archivo = fecha actual

28/11/2005 - 09:47 por Marín | Informe spam
Me gustaría hacer un script automático que genere un archivo cada día cuyo
nombre coincida con la fecha de ese momento o, en su defecto, que vaya
poniendo nombres diferentes que no machaquen el anterior.
¿Alguna idea?.
Gracias.

Preguntas similare

Leer las respuestas

#1 Pepe
28/11/2005 - 13:21 | Informe spam
Esta funcion en VBScript te devuelve la fecha en 2 digitos

Function f_Fecha()
Dim a_Agno, m_Mes, d_Dia
m_Mes = Month(Date)
If m_Mes < 10 Then m_Mes = "0" & m_Mes
d_Dia = Day(Date)
If d_Dia < 10 Then d_Dia = "0" & d_Dia
a_Agno = Year(Date)
f_Fecha = a_Agno & m_Mes & d_Dia
End Function


"Marín" escribió en el mensaje
news:
Me gustaría hacer un script automático que genere un archivo cada día cuyo
nombre coincida con la fecha de ese momento o, en su defecto, que vaya
poniendo nombres diferentes que no machaquen el anterior.
¿Alguna idea?.
Gracias.

Respuesta Responder a este mensaje
#2 Marín
28/11/2005 - 16:13 | Informe spam
Gracias Pepe, pero no se cómo aplicarlo desde el prompt de windows. Lo he
metido en un .vbs pero no devuelve nada.
Mi idea es generar unos logs diarios dentro de un fichero txt con el nombre
del mes en curso, de esa forma tendría 12 txt que se renovarían anualmente.
comando > mesactual.txt
Controlo bien los comandos batch pero no veo la manera de hacer esto...

"Pepe" escribió:

Esta funcion en VBScript te devuelve la fecha en 2 digitos

Function f_Fecha()
Dim a_Agno, m_Mes, d_Dia
m_Mes = Month(Date)
If m_Mes < 10 Then m_Mes = "0" & m_Mes
d_Dia = Day(Date)
If d_Dia < 10 Then d_Dia = "0" & d_Dia
a_Agno = Year(Date)
f_Fecha = a_Agno & m_Mes & d_Dia
End Function


"Marín" escribió en el mensaje
news:
> Me gustaría hacer un script automático que genere un archivo cada día cuyo
> nombre coincida con la fecha de ese momento o, en su defecto, que vaya
> poniendo nombres diferentes que no machaquen el anterior.
> ¿Alguna idea?.
> Gracias.
>



Respuesta Responder a este mensaje
#3 Daniel Martín
28/11/2005 - 16:50 | Informe spam
Te dejo un BAT que creé para otra consulta del grupo de noticias. En concreto genera un fichero TXT en C con nombre igual a la fecha y hora de ejecución y con contenido igual al contenido del directorio donde esté alojado el BAT. Modifícalo libremente para que cumpla tus necesidades:

echo off

set guion=-
set ext=.txt
for /f "tokens=1,2,3 delims=/ " %%i in ('date /t') do (
set ano=%%k
set dia=%%i
set mes=%%j)
for /f "tokens=1,2 delims=: " %%a in ('time /t') do (
set hora=%%a
set minutos=%%b)
set cadena=%dia%%guion%%mes%%guion%%ano%%guion%%hora%%guion%%minutos%%ext%

dir %1 /-p /o:gn > "C:\Listado Directorio-"%cadena%

exit

El BAT es válido para Windows XP con configuración regional española (o del estilo "día, mes, año").

Un saludo,
Daniel Martín
Correo electrónico:


"Marín" wrote in message news:
Me gustaría hacer un script automático que genere un archivo cada día cuyo
nombre coincida con la fecha de ese momento o, en su defecto, que vaya
poniendo nombres diferentes que no machaquen el anterior.
¿Alguna idea?.
Gracias.

Respuesta Responder a este mensaje
#4 Marc [MVP Windows]
28/11/2005 - 17:19 | Informe spam
Dia = Day(Now)
If Dia < 10 then
Dia = "0" & Dia
End If
Mes = Month(Now)
Anyo = Year(Date)

Fecha = Anyo & Mes & Dia

Set objFSO = CreateObject("Scripting.FileSystemObject")
objTextFile.WriteLine (& Fecha & ".txt)

Saludos,

Marc
MCP - MVP Windows Shell/User
Oracle9i Certified Associate (OCA)

Este mensaje se proporciona "como está" sin garantías de ninguna clase, y no
otorga ningún derecho.


"Marín" wrote:

Gracias Pepe, pero no se cómo aplicarlo desde el prompt de windows. Lo he
metido en un .vbs pero no devuelve nada.
Mi idea es generar unos logs diarios dentro de un fichero txt con el nombre
del mes en curso, de esa forma tendría 12 txt que se renovarían anualmente.
comando > mesactual.txt
Controlo bien los comandos batch pero no veo la manera de hacer esto...

"Pepe" escribió:

> Esta funcion en VBScript te devuelve la fecha en 2 digitos
>
> Function f_Fecha()
> Dim a_Agno, m_Mes, d_Dia
> m_Mes = Month(Date)
> If m_Mes < 10 Then m_Mes = "0" & m_Mes
> d_Dia = Day(Date)
> If d_Dia < 10 Then d_Dia = "0" & d_Dia
> a_Agno = Year(Date)
> f_Fecha = a_Agno & m_Mes & d_Dia
> End Function
>
>
> "Marín" escribió en el mensaje
> news:
> > Me gustaría hacer un script automático que genere un archivo cada día cuyo
> > nombre coincida con la fecha de ese momento o, en su defecto, que vaya
> > poniendo nombres diferentes que no machaquen el anterior.
> > ¿Alguna idea?.
> > Gracias.
> >
>
>
>
Respuesta Responder a este mensaje
#5 Marín
29/11/2005 - 09:15 | Informe spam
Muchas gracias por la ayuda, ha sido más que suficiente. Un saludo.

"Daniel Martín" escribió:

Te dejo un BAT que creé para otra consulta del grupo de noticias. En concreto genera un fichero TXT en C con nombre igual a la fecha y hora de ejecución y con contenido igual al contenido del directorio donde esté alojado el BAT. Modifícalo libremente para que cumpla tus necesidades:

echo off

set guion=-
set ext=.txt
for /f "tokens=1,2,3 delims=/ " %%i in ('date /t') do (
set ano=%%k
set dia=%%i
set mes=%%j)
for /f "tokens=1,2 delims=: " %%a in ('time /t') do (
set hora=%%a
set minutos=%%b)
set cadena=%dia%%guion%%mes%%guion%%ano%%guion%%hora%%guion%%minutos%%ext%

dir %1 /-p /o:gn > "C:\Listado Directorio-"%cadena%

exit

El BAT es válido para Windows XP con configuración regional española (o del estilo "día, mes, año").

Un saludo,
Daniel Martín
Correo electrónico:


"Marín" wrote in message news:
> Me gustaría hacer un script automático que genere un archivo cada día cuyo
> nombre coincida con la fecha de ese momento o, en su defecto, que vaya
> poniendo nombres diferentes que no machaquen el anterior.
> ¿Alguna idea?.
> Gracias.
>

Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida