Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: Yurix en 23 Abril 2009, 20:43 pm



Título: Ayuda, cortar una parte de un txt.
Publicado por: Yurix en 23 Abril 2009, 20:43 pm
 Hola a todos ,soy nuevo en este foro .
Quisiera saber como puedo cortar un txt hasta un determinado punto ,de ahi hasta el final no me interesa mas nada.
Hay que buscar hasta donde diga "8BIMPatt" y salvarlo en esa u otra txt.
Ayuda  :huh:


Título: Re: Ayuda, cortar una parte de un txt.
Publicado por: braulio-- en 23 Abril 2009, 21:35 pm
¿En que lenguaje quieres hacerlo?


Título: Re: Ayuda, cortar una parte de un txt.
Publicado por: Novlucker en 23 Abril 2009, 21:38 pm
Exacto, empecemos por el lenguaje en el que lo quieres hacer, ya que el scripting es MUY amplio, batch, perl, python, js, vbs, etc etc  :P

Ej vbs:
Código
  1. Set objfso = createobject("scripting.filesystemobject")
  2. FiPath = wscript.arguments(0)
  3. Set YourFile = objfso.opentextfile(FiPath,1)
  4. Filecontent = YourFile.readall: YourFile.close
  5. Filecontent = Left(Filecontent,instr(1,Filecontent,"8BIMPatt",1)-1)
  6. Set YourFile = objfso.opentextfile(FiPath,2,true)
  7. YourFile.write Filecontent: YourFile.close
En este caso basta con tomar el archivo y arrastrarlo sobre el script, teniendo en cuenta además de que si o si debe de tener la palabra "8BIMPatt" en algún sitio :P

Saludos

Apostaría que batch XD


Título: Re: Ayuda, cortar una parte de un txt.
Publicado por: Yurix en 23 Abril 2009, 21:55 pm
 

Lo desearia en bach pero me sirve cualquier otro que funcione en windows.Este script puede servir para optimizar .psd de PhothoShop agregandole despues este codigo de mi pagina .

http://sites.google.com/site/compactamos/descargas/InsertPSD.zip?attredirects=0


Título: Re: Ayuda, cortar una parte de un txt.
Publicado por: Novlucker en 23 Abril 2009, 22:06 pm
En batch no se me ocurre, pero simplemente porque no es mi fuerte  :-X

Por otra parte este script si corre en win, solo debe de tener extensión vbs en lugar de bat, pruebalo con una copia de uno de esos archivos  :D

Saludos


Título: Re: Ayuda, cortar una parte de un txt.
Publicado por: Yurix en 23 Abril 2009, 22:34 pm

Puede ser en bach o .vbs ,lo que desearia que me ayudaran es

Picar el archivo hasta "8BIMPatt" y agregarle al final del archivo el contenido del txt que tengo en esta direccion:

http://sites.google.com/site/compactamos/descargas/InsertPSD.zip?attredirects=0

Alguien me puede ayudar con esto. ;D


Título: Re: Ayuda, cortar una parte de un txt.
Publicado por: Novlucker en 24 Abril 2009, 00:33 am
Bueno, en vista de que me has preguntado por PM, y es preferible hacerlo en el mismo post te contesto aquí:

Citar
... donde puedo conseguir manuales para aprender a programar en .vbs y porque se limita a archivos pequeños ,no me soporta un archivo de 6 mb ...

Aquí tienes (https://foro.elhacker.net/scripting/tutorial_vbscript-t229032.0.html) un tuto de vbs partiendo desde lo básico.
Con respecto a lo de los 6 mb debo de decirte que no, los 6 mb no son problema ya que acabo de probarlo con uno de 7 y ha funcionado bien, si da error es porque no se encuentra el texto 8BIMPatt  :silbar: , revisa bien tu archivo.

Y respondiendo a tu pregunta anterior, para copiar todo ese texto después quedaría así:

Código
  1. Set objfso = createobject("scripting.filesystemobject")
  2. FiPath = wscript.arguments(0)
  3. Folder = Left(wscript.scriptfullname,Len(wscript.scriptfullname)-Len(wscript.scriptname))
  4.  
  5. Set YourFile = objfso.opentextfile(FiPath,1)
  6. Filecontent = YourFile.readall: YourFile.close
  7. Filecontent = Left(Filecontent,instr(1,Filecontent,"8BIMPatt",1)-1)
  8. Set YourFile = objfso.opentextfile(FiPath,2,true)
  9. YourFile.write Filecontent
  10.  
  11. Set PSD = objfso.opentextfile(Folder & "InsertPSD.txt",1)
  12. PSDContent = PSD.readall: PSD.close
  13. YourFile.write PSDContent: YourFile.close

Hay que tener en cuenta de que en el mismo directorio que está el script debería de estar el "InsertPSD.txt"

Saludos


Título: Re: Ayuda, cortar una parte de un txt.
Publicado por: leogtz en 24 Abril 2009, 05:06 am
A ver, teniendo como ejemplo este archivo de texto:
file.txt:

Código:
123
234
345
456
567
678
789
890
8BIMPatt
leo
leo
lala
lelo
lala
lulu
juaisjuais
klasjkldjkasd
flkjdfklsdfmn,
Queremos cortar hasta donde se encuentre la palabra "8BIMPatt".
Código
  1. @echo off
  2. :: Leo Gutierrez R.
  3. setlocal enabledelayedexpansion
  4. for /f "tokens=1 delims=:" %%_ in ('type "file.txt" ^| findstr /n "8BIMPatt"') do (set "start=%%_")
  5. if not defined start (
  6. echo Palabra "8BIMPatt" no encontrada.
  7. set /p =Pulse para salir.
  8. exit /b 1
  9. )
  10. set /a "contador=0"
  11. for /f "tokens=*" %%_ in (file.txt) do (
  12. echo %%_ >> "otro.txt"
  13. set /a "contador+=1"
  14. if !contador! equ !start! (exit /b 0)
  15. )
  16. goto:eof
  17.  
El codigo nos creará un archivo llamado "otro.txt" donde se encontrará la información:
otro.txt:
Código:
123 
234
345
456
567
678
789
890
8BIMPatt

Saludos.


Título: Re: Ayuda, cortar una parte de un txt.
Publicado por: Yurix en 27 Abril 2009, 17:10 pm


wao wao wao , muchas gracias a los dos por contestar amablemente a mi pregunta .