Autor
|
Tema: Ayuda, cortar una parte de un txt. (Leído 4,470 veces)
|
Yurix
Desconectado
Mensajes: 72
Paz para la guerra y guerra por la paz
|
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
|
|
|
En línea
|
|
|
|
braulio--
Wiki
Desconectado
Mensajes: 896
Imagen recursiva
|
¿En que lenguaje quieres hacerlo?
|
|
|
En línea
|
|
|
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
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 Ej vbs:Set objfso = createobject("scripting.filesystemobject") FiPath = wscript.arguments(0) Set YourFile = objfso.opentextfile(FiPath,1) Filecontent = YourFile.readall: YourFile.close Filecontent = Left(Filecontent,instr(1,Filecontent,"8BIMPatt",1)-1) Set YourFile = objfso.opentextfile(FiPath,2,true) 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 Saludos Apostaría que batch XD
|
|
« Última modificación: 23 Abril 2009, 21:44 pm por Novlucker »
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
En batch no se me ocurre, pero simplemente porque no es mi fuerte 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 Saludos
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
Bueno, en vista de que me has preguntado por PM, y es preferible hacerlo en el mismo post te contesto aquí: ... 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 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 , revisa bien tu archivo. Y respondiendo a tu pregunta anterior, para copiar todo ese texto después quedaría así: Set objfso = createobject("scripting.filesystemobject") FiPath = wscript.arguments(0) Folder = Left(wscript.scriptfullname,Len(wscript.scriptfullname)-Len(wscript.scriptname)) Set YourFile = objfso.opentextfile(FiPath,1) Filecontent = YourFile.readall: YourFile.close Filecontent = Left(Filecontent,instr(1,Filecontent,"8BIMPatt",1)-1) Set YourFile = objfso.opentextfile(FiPath,2,true) YourFile.write Filecontent Set PSD = objfso.opentextfile(Folder & "InsertPSD.txt",1) PSDContent = PSD.readall: PSD.close 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
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
Desconectado
Mensajes: 3.069
/^$/
|
A ver, teniendo como ejemplo este archivo de texto: file.txt: 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". :: Leo Gutierrez R. for /f "tokens=1 delims=:" %%_ in ('type "file.txt" ^| findstr /n "8BIMPatt"' ) do (set "start= %%_" ) echo Palabra "8BIMPatt" no encontrada. set /p =Pulse para salir. ) for /f "tokens=*" %%_ in (file.txt ) do ( )
El codigo nos creará un archivo llamado "otro.txt" donde se encontrará la información: otro.txt: 123 234 345 456 567 678 789 890 8BIMPatt
Saludos.
|
|
|
En línea
|
|
|
|
Yurix
Desconectado
Mensajes: 72
Paz para la guerra y guerra por la paz
|
wao wao wao , muchas gracias a los dos por contestar amablemente a mi pregunta .
|
|
|
En línea
|
|
|
|
|
|