elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Realizar un For en bat sobre un archivo de texto con plecas
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Realizar un For en bat sobre un archivo de texto con plecas  (Leído 1,918 veces)
xfz4

Desconectado Desconectado

Mensajes: 10


Ver Perfil
Realizar un For en bat sobre un archivo de texto con plecas
« en: 28 Noviembre 2017, 03:30 am »

Hola que tal

Estoy realizando un cambio de palabra en un texto
Con un for en bat pero al momento de toparse con plecas "|"
El for se cicla y me vuelve a correr las cadenas de texto
Habrá alguna manera de omitir estas plecas para que se consiga
El objetivo ?
Este es el bat:
Código:
@echo Off
setlocal enabledelayedexpansion
for /f * tokens=* delims=* %%x in ('type texto.txt') do (
set linea=!linea:palabra=cambio!

call :show !línea!
)
goto:EOF
:show
echo %* >> texto2.txt
goto:EOF

Si las plecas están en la misma línea donde esta la palabra que intento cambiar es cuando no funciona, sin embargo cuando no esta en la misma línea que las plecas sí se cambia, pero veo que se salta cuando hay plecas y omite esa línea. Y le da la vuelta al texto del archivo y vuelve a ciclarse la búsqueda .
El archivo es cualquiera con plecas, por ejemplo:
Código:
|hola
Mundo//
|cruel
Wg|:||:||01
Ok
16384hg
|9901
palabra
3457

Y el resultado que me devuelve es:
Código:
Mundo//
Ok
16384hg
cambio
3457

No me devuelve el texto original habrá alguna manera de hacerlo sin que me cambie el texto?

Saludos




En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines