Ayuda para .bat

31/10/2005 - 14:35 por abucar | Informe spam
Hola gente del foro...
la consulta es: con la ayuda de Claudia modifiqué la bat que proporciona la
página de Soporte de MS para imprimir la Lista de files de un directorio para
que, en lugar de ir directamente a imprimirse, se guarde en un txt y la lista
pueda ser modificada.
La nueva bat quedó así:
echo off
dir %1 /-p /o:gn > "C:\files\Listado Directorio.txt"
exit
y funciona perfectamente pero necesitaría que la bat agregue automaticamente
al nombre del file txt algún dato variable (p ej: un número consecutivo, al
menos hasta cierto rango o la fecha y hora de creación), de modo que un nuevo
file txt no pise el anterior si se omitió cambiarle el nombre.
Saben si esto es posible y como hacerlo?.
Desde ya muchas gracias.
Carlos.
Buenos Aires - Argentina.

Preguntas similare

Leer las respuestas

#1 Sygrama Software
31/10/2005 - 14:56 | Informe spam
Hola Carlos:
Tendrías que aprovechar esta idea, que es para crear un directorio con la fecha. (Alejandro Diosdado, Dic.2003):

Puedes usar el comando FOR para crear la carpeta con la fecha en formato YYYYMMDD de la siguiente manera:

for /f "tokens=1-4 delims=/ " %a in ('date /T') do md c:\%c%b%a

Ahora no tengo tiempo de hacer pruebas, pero en principio tendría que alcanzar con que la orden del "do" (md c:\%c%b%a), la reemplaces por la que te interesa:
dir %1 /-p /o:gn > "C:\files\Listado Directorio%c%b%a.txt"
Pero tendrías que probarlo, a ver cómo sale (va todo en una sola línea).
Saludos
Claudia Podestá
Rosario - Argentina



"abucar" escribió en el mensaje news:
Hola gente del foro...
la consulta es: con la ayuda de Claudia modifiqué la bat que proporciona la
página de Soporte de MS para imprimir la Lista de files de un directorio para
que, en lugar de ir directamente a imprimirse, se guarde en un txt y la lista
pueda ser modificada.
La nueva bat quedó así:
echo off
dir %1 /-p /o:gn > "C:\files\Listado Directorio.txt"
exit
y funciona perfectamente pero necesitaría que la bat agregue automaticamente
al nombre del file txt algún dato variable (p ej: un número consecutivo, al
menos hasta cierto rango o la fecha y hora de creación), de modo que un nuevo
file txt no pise el anterior si se omitió cambiarle el nombre.
Saben si esto es posible y como hacerlo?.
Desde ya muchas gracias.
Carlos.
Buenos Aires - Argentina.
Respuesta Responder a este mensaje
#2 Daniel Martín
31/10/2005 - 15:58 | Informe spam
Te he creado el código a medida. El BAT que te dejo crea el fichero "Listado Directorio.txt" en la carpeta C:\Files (que debe existir con antelación a la ejecución del BAT) con la fecha y hora de su creación como sufijos del mismo, para así poder diferenciar los distintos archivos y evitar así su sobreescritura:

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:\Files\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:


"abucar" wrote in message news:
Hola gente del foro...
la consulta es: con la ayuda de Claudia modifiqué la bat que proporciona la
página de Soporte de MS para imprimir la Lista de files de un directorio para
que, en lugar de ir directamente a imprimirse, se guarde en un txt y la lista
pueda ser modificada.
La nueva bat quedó así:
echo off
dir %1 /-p /o:gn > "C:\files\Listado Directorio.txt"
exit
y funciona perfectamente pero necesitaría que la bat agregue automaticamente
al nombre del file txt algún dato variable (p ej: un número consecutivo, al
menos hasta cierto rango o la fecha y hora de creación), de modo que un nuevo
file txt no pise el anterior si se omitió cambiarle el nombre.
Saben si esto es posible y como hacerlo?.
Desde ya muchas gracias.
Carlos.
Buenos Aires - Argentina.
Respuesta Responder a este mensaje
#3 abucar
01/11/2005 - 00:30 | Informe spam
Hola Daniel, antes que nada gracias por la molestia que te tomaste para
tratar de resolver mi consulta, lamentablemente no funcionó y ese BAT me
supera.
Te comento que hace: crea el file con el nombre "Listado Directorio-31", es
decir que del sufijo sólo pone un guión y el día, que es el primer parámetro
y nada mas y tampoco la extensión y respecto al file generado contiene la
lista que se quería pero antes de ella repite 8 veces la path donde está la
carpeta de la cual se está guardando la lista (Directorio de C:\Fotos\Tempo)
que es Tempo.
En Configuración Regional me figura Español(Argentina), la fecha como
dd/mm/aaaa y la hora como hh:mm:ss y tengo XP Pro SP2.
Slds.
Carlos.
Buenos Aires - Argentina

"Daniel Martín" escribió:

Te he creado el código a medida. El BAT que te dejo crea el fichero "Listado Directorio.txt" en la carpeta C:\Files (que debe existir con antelación a la ejecución del BAT) con la fecha y hora de su creación como sufijos del mismo, para así poder diferenciar los distintos archivos y evitar así su sobreescritura:

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:\Files\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:


"abucar" wrote in message news:
> Hola gente del foro...
> la consulta es: con la ayuda de Claudia modifiqué la bat que proporciona la
> página de Soporte de MS para imprimir la Lista de files de un directorio para
> que, en lugar de ir directamente a imprimirse, se guarde en un txt y la lista
> pueda ser modificada.
> La nueva bat quedó así:
> echo off
> dir %1 /-p /o:gn > "C:\files\Listado Directorio.txt"
> exit
> y funciona perfectamente pero necesitaría que la bat agregue automaticamente
> al nombre del file txt algún dato variable (p ej: un número consecutivo, al
> menos hasta cierto rango o la fecha y hora de creación), de modo que un nuevo
> file txt no pise el anterior si se omitió cambiarle el nombre.
> Saben si esto es posible y como hacerlo?.
> Desde ya muchas gracias.
> Carlos.
> Buenos Aires - Argentina.

Respuesta Responder a este mensaje
#4 Daniel Martín
01/11/2005 - 01:24 | Informe spam
El BAT debería crear en C:\Files un archivo de texto llamado "Listado Directorio-DD-MM-AAAA-HH-NN.txt" (donde "DD" refleja el día de creación, "MM" el mes, "AAAA" el año, "HH" la hora" y "NN" los minutos). Dicho fichero de texto contiene la lista de archivos y subcarpetas de la carpeta donde tienes alojado el BAT.

Déjanos la salida de los comandos "date /t" y "time /t" en tu PC. Por cierto, si me dejas una cuenta de correo válida puedo adjuntarte el BAT ya creado (por si se tratara de algún problema al copiar y pegar, veo que accedes desde la web). Por cierto, el BAT requiere privilegios administrativos.

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


"abucar" wrote in message news:
Hola Daniel, antes que nada gracias por la molestia que te tomaste para
tratar de resolver mi consulta, lamentablemente no funcionó y ese BAT me
supera.
Te comento que hace: crea el file con el nombre "Listado Directorio-31", es
decir que del sufijo sólo pone un guión y el día, que es el primer parámetro
y nada mas y tampoco la extensión y respecto al file generado contiene la
lista que se quería pero antes de ella repite 8 veces la path donde está la
carpeta de la cual se está guardando la lista (Directorio de C:\Fotos\Tempo)
que es Tempo.
En Configuración Regional me figura Español(Argentina), la fecha como
dd/mm/aaaa y la hora como hh:mm:ss y tengo XP Pro SP2.
Slds.
Carlos.
Buenos Aires - Argentina

"Daniel Martín" escribió:

Te he creado el código a medida. El BAT que te dejo crea el fichero "Listado Directorio.txt" en la carpeta C:\Files (que debe existir con antelación a la ejecución del BAT) con la fecha y hora de su creación como sufijos del mismo, para así poder diferenciar los distintos archivos y evitar así su sobreescritura:

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:\Files\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:


"abucar" wrote in message news:
> Hola gente del foro...
> la consulta es: con la ayuda de Claudia modifiqué la bat que proporciona la
> página de Soporte de MS para imprimir la Lista de files de un directorio para
> que, en lugar de ir directamente a imprimirse, se guarde en un txt y la lista
> pueda ser modificada.
> La nueva bat quedó así:
> echo off
> dir %1 /-p /o:gn > "C:\files\Listado Directorio.txt"
> exit
> y funciona perfectamente pero necesitaría que la bat agregue automaticamente
> al nombre del file txt algún dato variable (p ej: un número consecutivo, al
> menos hasta cierto rango o la fecha y hora de creación), de modo que un nuevo
> file txt no pise el anterior si se omitió cambiarle el nombre.
> Saben si esto es posible y como hacerlo?.
> Desde ya muchas gracias.
> Carlos.
> Buenos Aires - Argentina.

Respuesta Responder a este mensaje
#5 abucar
01/11/2005 - 02:21 | Informe spam
Daniel, la bat la ejecuto de acuerdo a lo indicado en la página que adjunto,
http://support.microsoft.com/defaul...s;Q321379,
es decir que tengo la opción de ejecutarla cliqueando con el boton derecho
del mause sobre el file del que quiero el contenido, aprovechanado la
facilidad de las acciones de carpeta, para lo cual modifico directamente la
bat Printdir.bat indicada en esa página, que está en C:\windows y no creando
otra.
De todas formas para verificar si esa era la causa del porque el bat no
funciona cree otra con los comandos que me enviaste y la guardé en la carpeta
de la quiero guardar el contenido según indicás en tu última respuesta y al
correrla creó en "files" un archivo con el mismo nombre que te comenté en mi
respuesta anterior pero ahora en el file creado no estaba la lista contenida
en el file que me interesa y dentro del cual estaba el bat.
Por otra parte no siempre necesito los datos del mismo file, por lo que si
el bat debe estar dentro de él tendría que estar moviendo el .bat cada vez.
Finalmente no se que significa o que debo hacer con"Déjanos la salida de los
comandos "date /t" y "time /t" en tu PC." o " Por cierto, el BAT requiere
privilegios administrativos".
No creo que sea problema de copiar y pegar ya que verifiqué cada línea del
bat pero si crees que puede ayudar no tengo problemas en enviarte mi
dirección de mail de yahoo, sólo decime si lo mando como respuesta por aquí o
te lo mando a

Gracias
Carlos
Buenos Aires - Argentina


"Daniel Martín" escribió:

El BAT debería crear en C:\Files un archivo de texto llamado "Listado Directorio-DD-MM-AAAA-HH-NN.txt" (donde "DD" refleja el día de creación, "MM" el mes, "AAAA" el año, "HH" la hora" y "NN" los minutos). Dicho fichero de texto contiene la lista de archivos y subcarpetas de la carpeta donde tienes alojado el BAT.

Déjanos la salida de los comandos "date /t" y "time /t" en tu PC. Por cierto, si me dejas una cuenta de correo válida puedo adjuntarte el BAT ya creado (por si se tratara de algún problema al copiar y pegar, veo que accedes desde la web). Por cierto, el BAT requiere privilegios administrativos.

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


"abucar" wrote in message news:
> Hola Daniel, antes que nada gracias por la molestia que te tomaste para
> tratar de resolver mi consulta, lamentablemente no funcionó y ese BAT me
> supera.
> Te comento que hace: crea el file con el nombre "Listado Directorio-31", es
> decir que del sufijo sólo pone un guión y el día, que es el primer parámetro
> y nada mas y tampoco la extensión y respecto al file generado contiene la
> lista que se quería pero antes de ella repite 8 veces la path donde está la
> carpeta de la cual se está guardando la lista (Directorio de C:\Fotos\Tempo)
> que es Tempo.
> En Configuración Regional me figura Español(Argentina), la fecha como
> dd/mm/aaaa y la hora como hh:mm:ss y tengo XP Pro SP2.
> Slds.
> Carlos.
> Buenos Aires - Argentina
>
> "Daniel Martín" escribió:
>
>> Te he creado el código a medida. El BAT que te dejo crea el fichero "Listado Directorio.txt" en la carpeta C:\Files (que debe existir con antelación a la ejecución del BAT) con la fecha y hora de su creación como sufijos del mismo, para así poder diferenciar los distintos archivos y evitar así su sobreescritura:
>>
>> 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:\Files\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:
>>
>>
>> "abucar" wrote in message news:
>> > Hola gente del foro...
>> > la consulta es: con la ayuda de Claudia modifiqué la bat que proporciona la
>> > página de Soporte de MS para imprimir la Lista de files de un directorio para
>> > que, en lugar de ir directamente a imprimirse, se guarde en un txt y la lista
>> > pueda ser modificada.
>> > La nueva bat quedó así:
>> > echo off
>> > dir %1 /-p /o:gn > "C:\files\Listado Directorio.txt"
>> > exit
>> > y funciona perfectamente pero necesitaría que la bat agregue automaticamente
>> > al nombre del file txt algún dato variable (p ej: un número consecutivo, al
>> > menos hasta cierto rango o la fecha y hora de creación), de modo que un nuevo
>> > file txt no pise el anterior si se omitió cambiarle el nombre.
>> > Saben si esto es posible y como hacerlo?.
>> > Desde ya muchas gracias.
>> > Carlos.
>> > Buenos Aires - Argentina.
>>

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