ayuda para hacer un batch

Iniciado por desdemx, 23 Mayo 2012, 17:56 PM

0 Miembros y 2 Visitantes están viendo este tema.

Eleкtro

#10
Cita de: Runex en 24 Mayo 2012, 14:11 PM
Y ésta sería otra alternativa haciendo uso de split, como dice mi compañero Elektro
Código (python) [Seleccionar]
lista = archivo.read().split("|")

Maldita séa, De verdad que me da mucha rabia que Batch no tenga algo así... No creo que séa tan dificil de integrar una funcion de "split" por parte de Microsoft...

Bueno, Aquí lo dejo en Ruby, Ya que estamos:

Código (ruby) [Seleccionar]
# -*- coding: UTF-8 -*-

archivo = 'archivo.txt'
File.open(archivo, "r").each_line { |bloque|
puts bloque.split('|')
}


Saludos








desdemx

#11
WOW  ;D Muchas gracias EleKtro, si funciona a pesar de los espacios, pero el problema es que solo pasa hasta 99 líneas, ¿hay forma de hacer que haga mas? Porque lo mínimo son 310, pero hay unas que tienen mas de 1000




Muchas gracias Runex  ;D , pero perdona mi ignorancia, ¿estos con que extensión los guardo y que programa debo de tener para poder ejecutarlos?

Y si que se nota la diferencia entre la programación entre uno y otro, es bastante menos.




orvtech de cualquier forma te agradezco mucho.

Saludos.



Elektro H@cker: No hacer doble (Ni triple...)  post, usa el botón "Modificar"

Eleкtro

#12
Cita de: desdemx en 24 Mayo 2012, 16:40 PM¿estos con que extensión los guardo y que programa debo de tener para poder ejecutarlos?

Si quieres usar el code de Runex, El archivo se guarda como ARCHIVO.PY, Y necesitas Python.
http://www.python.org/download/

Si quieres usar el último code que puse, El archivo se guarda como ARCHIVO.RB, Y necesitas Ruby...
http://www.ruby-lang.org/es/downloads/

El código en Batch seguramente te esté dando problemas por el límite de recursividad (Demasiadas llamadas "CALL") Intentaré arreglarlo a ver...

EDITO: ¿Es este el error que te da?

******  RECURSIÓN DE ARCHIVO POR LOTES supera los límites de la PILA ******
Recuento de recursiones=302,Uso de la pila=90 por ciento
******     SE ANULA  EL PRECESAMIENTO DEL ARCHIVO POR LOTES       ******


Saludos








desdemx

#13
Gracias de nuevo  ;D , voy a probar con los oros 2 que me hicieron favor de hacer.

En verdad agradezco mucho el tiempo que invierten en ayudarme.  :laugh:  ;-)

Saludos.  




En cuanto al error, no veo cual solo se cierra, pero lo probé con varios archivos y todos terminan en la línea 99.

Saludos.




Cita de: EleKtro H@cker en 24 Mayo 2012, 16:47 PM
Si quieres usar el code de Runex, El archivo se guarda como ARCHIVO.PY, Y necesitas Python.
http://www.python.org/download/

Si quieres usar el último code que puse, El archivo se guarda como ARCHIVO.RB, Y necesitas Ruby...
http://www.ruby-lang.org/es/downloads/

El código en Batch seguramente te esté dando problemas por el límite de recursividad (Demasiadas llamadas "CALL") Intentaré arreglarlo a ver...

EDITO: ¿Es este el error que te da?

******  RECURSIÓN DE ARCHIVO POR LOTES supera los límites de la PILA ******
Recuento de recursiones=302,Uso de la pila=90 por ciento
******     SE ANULA  EL PRECESAMIENTO DEL ARCHIVO POR LOTES       ******


Saludos

Ya descargue los programas para usar los otros archivos, y los guarde con las extensiones que me dijiste y el de Ruby si alcanzo a ver que hace algo, pero la ventana se cierra muy rápido. El de Python es aun más rápido.

No se si estoy haciendo algo mal, ¿me puedes decir por favor como debo ejecutarlos para obtener el resultado?  :huh:

Gracias.

Saludos.


Elektro H@cker: No hacer doble  post, usa el botón "Modificar"

Eleкtro

#14
desdemx.rb

Código (ruby) [Seleccionar]
# Pon este código en la carpeta donde tengas los archivos de texto que quieras listar en vertical...
# Este código creará un nuevo archivo con el mismo nombre de cada texto que se vaya procesando...
# Ejemplo: archivo1.txt < > archivo1_NUEVO.txt

for file in Dir.glob("*.{txt}") do
puts "[+] #{file}:\n\n"
File.open(file[0..-5] + "_Nuevo.txt", 'a+') do |newfile|
File.open(file, "r").each_line { |bloque|
puts bloque.gsub('|', '|elektro;').split('elektro;'), "\n"
newfile.puts bloque.gsub('|', '|elektro;').split('elektro;'), "\n"
}
end # arrays
end # for

print '
Proceso finalizado.
Gracias por usar!

Elektro H@cker
Foro.ElHacker.Net
'
sleep 8


Te lo dejo convertido a .exe, así no tienes que descargar ruby ni python:
http://www.mediafire.com/?8la94w50ct1i780



Saludos.

PD: Repito, No hagas doble y mucho menos TRIPLE post... :-/ el proximo doble post lo elimino.








desdemx

Perdón por lo de los post. :-[

Muchisimas gracias  ;D ya funciona como lo quiero ;-)

Saludos.

Runex

Se cierra rápido ya que no puse ningún bloqueo una vez finalizada la secuencia del programa, con un simple raw_input() se hubiera solucionado :).

Me alegro de que hayas conseguido lo que necesitabas, cualquier cosa, ya sabes :)

Un saludo, Runex
"No renunciaría al bambú.
Nunca renuciaría a ti.
No te compares con otros" "El me dijo:
El bambú tenía un propósito diferente al del
helecho, sin embargo eran necesarios y
hacían del bosque un lugar hermoso".

desdemx

Runex pues te agradezco mucho el tiempo que le dedicaste  ;D y mas gracias  por ofrecer tu ayuda ;D.

Saludos.