Ms-Dos - Bat que al encontrar campo en interior de archivo lo mueva a otro directorio

 
Vista:
sin imagen de perfil

Bat que al encontrar campo en interior de archivo lo mueva a otro directorio

Publicado por CarlosQ (28 intervenciones) el 30/01/2012 18:32:10
Maestros,

alguien a creado un bat que pueda leer un monton de archivos de formato txt y que me mueva a troa carpeta los archivos que contengan en su interior un determinado campo.

por favor como podría hacer eso?

saludos y gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 1.419
Oro
Ha mantenido su posición en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

Bat que al encontrar campo en interior de archivo lo mueva a otro directorio

Publicado por Antoni Masana (811 intervenciones) el 31/01/2012 11:14:24
Solo tienes que modificar las tres lineas del SET para que funcione.

1
2
3
4
5
6
7
8
9
10
11
@echo off
SET Texto=Texto_Buscar
SET Dir_Orig=C:\Directorio Origen
SET Dir_Dest=C:\Directorio_Destino
 
cd %Dir_Orig%
 
for %%a in (*.TXT) do (
   find "%Texto%" %%a >nul
   if not errorlevel 1 echo move %Dir_Orig%\%%a %Dir_Dest%\%%a
)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 1.419
Oro
Ha mantenido su posición en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

Bat que al encontrar campo en interior de archivo lo mueva a otro directorio

Publicado por Antoni Masana (811 intervenciones) el 31/01/2012 11:16:37
Un detalle para directorios que en el nombre hay espacios .

1
2
3
4
5
6
7
8
9
10
11
echo off
SET Texto=Texto_Buscar
SET Dir_Orig=C:\Directorio Origen
SET Dir_Dest=C:\Directorio Destino
 
cd %Dir_Orig%
 
for %%a in (*.TXT) do (
   find "%Texto%" %%a >nul
   if not errorlevel 1 echo move "%Dir_Orig%\%%a" "%Dir_Dest%\%%a"
)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Bat que al encontrar campo en interior de archivo lo mueva a otro directorio

Publicado por CarlosQ (28 intervenciones) el 31/01/2012 16:53:27
Muchas gracias Antoni lo voy a probar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Bat que al encontrar campo en interior de archivo lo mueva a otro directorio

Publicado por Sergio (18 intervenciones) el 09/08/2012 00:24:41
Buenas Tardes.

He estado viedo el foro y el bat que muestran se asemeja a lo que necesito hacer, sin embargo como no conosco de codigos DOS no he logrado modificarlo.

Ejemplo:

Tengo en la ruta C:\Super varios archivos " *.hse " que en el interior de cada archivo solo debe de contener datos numericos; y tengo un archivo de texto que se llama " Cod_errados.txt " el cual contiene en una sola columna todas las vocales.

Lo que pretendo que haga este bat es que identifique que archivos *.hse contiene las vocales que se encuentran registradas en el archivo " Cod_errados.txt ", posteriormente deve enlistarme en una archivo de texto todos los nombres de los archivos *.hse que en su interior contengan los registros de " Cod_errados.txt "

Luego de ello eliminar los archivos *.hse que tenga enlistado en el nuevo archivo creado por la validacion.

Tener en cuenta que lo de las vocales en el archivo " Cod_errados.txt " es solo de ejemplo, ya que este archivo podria poner cualquier dao que yo quisiera que se conpare con todos los archivos *.hse que haya en la ruta C:\Super .

Por favor, espero puedan ayudarme.

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar