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


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


  Mostrar Mensajes
Páginas: 1 ... 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 [1122] 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 ... 1254
11211  Programación / Scripting / Re: Batch multi-idiomas en: 24 Mayo 2012, 18:25 pm
Método 1:

Spanish.ini
Código:
1=Bienvenido a mi programa
2=Porfavor seleccione una opcion para continuar...
3=Codeado por Elektro H@cker
4=opcion

English.ini
Código:
1=Welcome to my program
2=Please choose an option to continue...
3=Coded by Elektro H@cker
4=option

test.bat
Código
  1. @Echo OFF
  2.  
  3. Echo What language you will to use? \ Que lenguaje quiere usar? | MORE
  4. Echo [1] English, [2] Spanish, [3] Catalan.                     | MORE
  5. Choice /C 123 /M "Choose a language"
  6. If %Errorlevel% EQU 1 (Set LANG=English)
  7. If %Errorlevel% EQU 2 (Set LANG=Spanish)
  8.  
  9. For /F "Tokens=2 Delims==" %%a in ('Type "%LANG%.ini" ^| Find "1="') Do (set saludo=%%a)
  10. For /F "Tokens=2 Delims==" %%a in ('Type "%LANG%.ini" ^| Find "2="') Do (set Selecciona=%%a)
  11. For /F "Tokens=2 Delims==" %%a in ('Type "%LANG%.ini" ^| Find "3="') Do (set autor=%%a)
  12. For /F "Tokens=2 Delims==" %%a in ('Type "%LANG%.ini" ^| Find "4="') Do (set opcion_menu=%%a)
  13.  
  14. :Menu
  15. Echo %Saludo%
  16. Echo %autor%           | MORE
  17. Echo %Selecciona%      | MORE
  18. Echo: %opcion_menu% 1
  19. Echo: %opcion_menu% 2
  20. Echo: %opcion_menu% 3  | MORE
  21.  
  22. Set /P option= ^>^>



Método 2:

Código
  1. @Echo OFF
  2.  
  3. Goto :Program
  4. :Langs
  5. If /I "%lang%" EQU "English" (
  6. Title Language Test Menu
  7. Set saludo=Welcome to my program
  8. Set Selecciona=Please choose an option to continue...
  9. Set opcion_menu=Option
  10. Set Autor=Coded by Elektro H@cker
  11. )
  12.  
  13. If /I "%lang%" EQU "Spanish" (
  14. Title Test de menu de idiomas
  15. Set saludo=Bienvenido a mi programa
  16. Set Selecciona=Porfavor seleccione una opcion para continuar...
  17. Set opcion_menu=Opcion
  18. Set Autor=Codeado por Elektro H@cker
  19. )
  20.  
  21. If /I "%lang%" EQU "Catalan" (
  22. Title Test de menu d'idiomes
  23. Set saludo=Benvingut al meu programa
  24. Set Selecciona=Si us plau seleccioneu una opcio per continuar ...
  25. Set opcion_menu=Opcio
  26. Set Autor=Codeaixat per Elektro H@cker
  27. )
  28. Goto :EOF
  29.  
  30. :Program
  31. Echo What language you will to use? \ Que lenguaje quiere usar? \ Que llenguatge voleu utilitzar? | MORE
  32. Echo [1] English, [2] Spanish, [3] Catalan.                                                       | MORE
  33. Choice /C 123 /M "Choose a language"
  34. If %Errorlevel% EQU 1 (Set LANG=English)
  35. If %Errorlevel% EQU 2 (Set LANG=Spanish)
  36. If %Errorlevel% EQU 3 (Set LANG=Catalan)
  37. Call :Langs
  38.  
  39. :Menu
  40. Echo %Saludo%
  41. Echo %autor%           | MORE
  42. Echo %Selecciona%      | MORE
  43. Echo: %opcion_menu% 1
  44. Echo: %opcion_menu% 2
  45. Echo: %opcion_menu% 3  | MORE
  46.  
  47. Set /P option= ^>^>



Los dos codes dan el mismo resultado:






Saludos!
11212  Programación / Scripting / Re: ayuda para hacer un batch en: 24 Mayo 2012, 17:36 pm
desdemx.rb

Código
  1. # Pon este código en la carpeta donde tengas los archivos de texto que quieras listar en vertical...
  2. # Este código creará un nuevo archivo con el mismo nombre de cada texto que se vaya procesando...
  3. # Ejemplo: archivo1.txt < > archivo1_NUEVO.txt
  4.  
  5. for file in Dir.glob("*.{txt}") do
  6. puts "[+] #{file}:\n\n"
  7. File.open(file[0..-5] + "_Nuevo.txt", 'a+') do |newfile|
  8. File.open(file, "r").each_line { |bloque|
  9. puts bloque.gsub('|', '|elektro;').split('elektro;'), "\n"
  10. newfile.puts bloque.gsub('|', '|elektro;').split('elektro;'), "\n"
  11. }
  12. end # arrays
  13. end # for
  14.  
  15. print '
  16. Proceso finalizado.
  17. Gracias por usar!
  18.  
  19. Elektro H@cker
  20. Foro.ElHacker.Net
  21. '
  22. 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.
11213  Programación / Scripting / Re: ayuda para hacer un batch en: 24 Mayo 2012, 16:47 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?

Código:
******  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
11214  Programación / Scripting / Re: ayuda para hacer un batch en: 24 Mayo 2012, 15:13 pm
Y ésta sería otra alternativa haciendo uso de split, como dice mi compañero Elektro
Código
  1. 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
  1. # -*- coding: UTF-8 -*-
  2.  
  3. archivo = 'archivo.txt'
  4. File.open(archivo, "r").each_line { |bloque|
  5. puts bloque.split('|')
  6. }

Saludos
11215  Programación / Scripting / Re: ayuda para hacer un batch en: 24 Mayo 2012, 09:41 am
en algunos también hay texto, así que no solo son segmentos de puros numero, sino en algunos están combinados.

El siguiente código separa los bloques cuando encuentra el caracter "|", Así que es independiente de si son números o texto... pero si algún bloque contiene un espacio, es posible que de error.

Código:
@Echo OFF

:: editado, versión 2 del code
:: Foro.ElHacker.Net

setlocal enabledelayedexpansion

For /F "tokens=*" %%# in ('Dir /B "*.txt" ^| FIND /V "NUEVO"') do (
For /F "tokens=*" %%a in ('type "%%#"') do (
Set /A Next=0
Echo %%#:
Echo __________________ | MORE
Set "String=%%a"
ECHO !String!> "%TEMP%\temp.txt"
FOR %%? IN (%TEMP%\temp.txt) DO (SET /A longitud=%%~z? - 2)
Call :Loop
Echo+
)
)
Goto :FIN
 
:Loop
For /F "tokens=*" %%a in ('Echo "%STRING%"') do (
Set /A Next+=1
If !NEXT! GTR %LONGITUD% (Goto :EOF)
Echo "!STRING:~%NEXT%,1!" | FINDSTR "|" >NUL
If !Errorlevel! EQU 1 (
Set "BLOCK=!BLOCK!!STRING:~%NEXT%,1!"
) ELSE (
If Defined BLOCK (Echo !BLOCK:^|=!^| & Echo !BLOCK:^|=!^|>>"%%~n#_NUEVO.txt")
Set "BLOCK=!STRING:~%NEXT%,1!"
)
Call :Loop
)
Goto :EOF


:FIN
Pause
Exit

EDIT:


PD: Joder, lo facil que seria hacer esto en ruby con un "split" o en python xD

Saludos
11216  Sistemas Operativos / Windows / Re: Desinstalar Games en: 24 Mayo 2012, 09:00 am
DESACTIVAR Juegos de Windows.bat

Código
  1. @echo off
  2. dism /online /disable-feature /featurename:InboxGames /quiet /norestart
  3. dism /online /disable-feature /featurename:"More Games" /quiet /norestart
  4. dism /online /disable-feature /featurename:"Internet Games" /quiet /norestart


Saludos
11217  Programación / Scripting / Re: ayuda para hacer un batch en: 23 Mayo 2012, 20:16 pm
Si, un contador para mostrar solo los números... cuando tenga un rato lo hago si no se me adelanta alguien.

salu2
11218  Foros Generales / Dudas Generales / Re: Nombres para sistema operativo en: 23 Mayo 2012, 19:54 pm
Cyrus
Cyrux

OpenCyrus
OpenCyrux



Citar
  -Código abierto (Linux).
   -Orientado a la web (plataforma para webapps).
   -Sincroniza apps a través de la nube.
   -Multiplataforma.
+ -Otra característica que se te ocurra.


 COSMO   (OS)
(Con eso haces un marketing que te cagas xD)

Saludos.
11219  Programación / Scripting / Re: ayuda para hacer un batch en: 23 Mayo 2012, 19:35 pm
Quizás no es el code más perfecto (Demasiado código), pero hace lo que pides.

Código
  1. @Echo OFF
  2.  
  3. :: Foro.ElHacker.Net
  4.  
  5. For /F "tokens=*" %%# in ('Dir /B "*.txt"') do (
  6. For /F "tokens=*" %%a in ('type "%%#"') do (
  7. Echo %%#: | MORE
  8. Set "String=000^|%%a"
  9. Set /A Next=2
  10. Call :Loop
  11. Echo __________________ | MORE
  12. )
  13. )
  14.  
  15.  
  16. :Loop
  17. For /F "tokens=%Next%,1,* delims=|" %%a in ('Echo "%STRING%"') do (
  18. Set /A "BLOCK=%%b" 2>NUL
  19. Echo %%b | FINDSTR "[0-9]"  || (Goto :EOF)
  20. Set /A Next+=1
  21. Call :Loop
  22. )



PD: Otra forma seria usar un FOR + Un Contador, Para ir mostrando cada bloque en 4x4 caracteres del texto.
Código
  1. Echo %Var:~4,4%
  2. Echo %Var:~8,4%
  3. Echo %Var:~12,4%
  4. Etc...

Saludos.
11220  Programación / Scripting / Re: Pregunta bastante sencilla: Acentos y comillas en Batch en: 23 Mayo 2012, 18:29 pm
Escapa las comillas \" :)
se ve que si funciona.

La forma de escapar un caracter en Batch, Por ejemplo una comilla doble es así: ^"
Con el caracter: ^

Solo hay 3 o 4 excepciones, Comandos como WMIC, REG, SCHTASKS, Y alguno que me estoy olvidando, Donde si es necesario escapar como comentó Runex. Pero en los demás no. (Lo sé, Batch es raro... xD).

Edito: ah, y sobre los acentos, tanto una vocal con acento como un acento suelto son caracteres latinos... Así que para mostrar una "ó" o un "´" no hay que escapar, Hay que usar el código de páginas correcto. (CHCP), O usar copy con
 
Saludos
Páginas: 1 ... 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 [1122] 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 ... 1254
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines