|
11461
|
Programación / Scripting / [Ruby] [APORTE] FINDUS (Find Duplicates)
|
en: 14 Abril 2012, 17:58 pm
|
 Esta utilidad busca archivos duplicados comprobando el hash CRC32. FINDUS [OPCIONES] [RUTA] - Opciones:
[-R] Habilita la búsqueda recursiva de subdirectorios.
- Ejemplos:
FINDUS "%CD%" FINDUS -R "C:\Windows"  # -*- coding: UTF-8 -*- require "zlib" exit if Object.const_defined?(:Ocra) def logo() print ' _______ __ _____ ___ ________ ____ ____ ________ /" "| |" \\ (\\" \\|" \\ |" "\\ (" _||_ " | /" ) (: ______) || | |.\\\\ \\ | (. ___ :) | ( ) : | (: \\___/ \\/ | |: | |: \\. \\\\ | |: \\ ) || (: | | . ) \\___ \\ // ___) |. | |. \\ \\. | (| (___\\ || \\\\ \\__/ // __/ \\\\ (: ( /\\ |\\ | \\ \\ | |: :) /\\\\ //\\ /" \\ :) \\__/ (__\\_|_) \\___|\\____\\) (________/ \\__/ (_______/ Find Duplicates v1.0 By Elektro H@cker ' end def help() print ' Este programa busca archivos duplicados comprobando el hash CRC32. [*] Modo de empleo: FINDUS [OPCIONES] [RUTA] [*] Opciones: [-R] Habilita la búsqueda recursiva en subdirectorios. [*] Ejemplos: FINDUS "%CD%" FINDUS -R "C:\Windows" ' Process.exit end def errorcontrol() if ARGV.empty? help elsif ARGV.length == 2 and not File.directory? (ARGV[1]) help elsif ARGV.length == 1 and not File.directory? (ARGV[0]) help end if ARGV[0] =~ /-r/i $folder = ARGV[1] Dir.chdir($folder) resursive = File.join("**", "*.*") $files = Dir.glob(resursive) elsif $folder = ARGV[0] Dir.chdir($folder) not_resursive = File.join("*.*") $files = Dir.glob(not_resursive) end end logo errorcontrol $list = "" # Listar los archivos del directorio File.open("#{ENV['TEMP']}\\dir.txt", 'w+') do |file| file.puts $files end # Comparar el crc de cada archivo listado File.read("#{ENV['TEMP']}\\dir.txt").each_line { |line| begin file = File.read(line.strip) ; nil file_crc = Zlib.crc32(file,0).to_s(16) file_size = File.size(line.strip) if $list[file_crc.to_s] print "#{$folder}\\#{line.strip.gsub('/', '\\')}\n#{$list.split(file_crc).first.split(")").last.split("\n\n").last}#{file_crc})\n\n" end $list << "#{$folder}\\#{line.strip.gsub('/', '\\')}\n(CRC32: #{file_crc}) (BYTES: #{file_size})\n\n" rescue print "Archivo inaccesible #{$folder}\\#{line}" end } __END__
PD: Tiene algunos fallos en los permisos de las carpetas especiales de windows Saludos.
|
|
|
11462
|
Programación / Scripting / Re: [BATCH] ¿Se puede sacar la duracion de una cancion?
|
en: 14 Abril 2012, 12:37 pm
|
Nativamente hablando no puedes hacer nada para obtener la duración de un archivo de música. Con Mediainfo si que puedes. http://mediainfo.sourceforge.net/es/Download/WindowsEn consola: mediainfo "archivo.mp3" "--Inform=General;%Duration/String3%" En un script: mediainfo "archivo.mp3" "--Inform=General;%%Duration/String3%%" Duration : Play time of the stream in ms Duration/String : Play time in format : XXx YYy only, YYy omited if zero Duration/String1 : Play time in format : HHh MMmn SSs MMMms, XX omited if zero Duration/String2 : Play time in format : XXx YYy only, YYy omited if zero Duration/String3 : Play time in format : HH:MM:SS.MMM
Pienso que lo mejor sería que hicieses una lista de reproducción. Para añadir todos los archivos a la lista del reproductor que usas. Así no tienes que pulsar enter, Ni averiguar el tiempo. http://foro.elhacker.net/scripting/script_en_batch_para_ordenar_un_poco-t356306.0.html;msg1727721#msg1727721Un ejemplo, Para winamp: PD: Cambia la ruta de la variable "carpeta" si es necesario. :: Generador de listas de música aleatorias.bat :: By Elektro H@cker Echo: Espere, Se esta randomizando la lista... Echo #EXTM3U >" %Temp%\Lista Winamp.tmp" For /F "Tokens=*" %%$ in (' Dir /B /S " %CARPETA%" ^| Findstr /I /R ".aif .flac .m4a .mid .mp3 .ogg .wav .wma"' ) do (Echo !Random!!Random!!Random!; %%$ >>" %Temp%\Lista Winamp.tmp" ) Echo #EXTM3U >" %Temp%\Lista Winamp.m3u" For /F "Tokens=2* Delims=;" %%$ in ('Type " %Temp%\Lista Winamp.tmp" ^| Sort ' ) do (Echo %%$ >>" %Temp%\Lista Winamp.m3u" ) Start /B C:"\Program Files (x86)\Winamp\winamp.exe" "%Temp%\Lista Winamp.m3u"
Salu2.
|
|
|
11464
|
Informática / Software / Re: existe un software para localizar ip?
|
en: 13 Abril 2012, 08:11 am
|
Son iguales de fiables los "localizadores web" que llamas tu que un programa que localize una ip.
De hecho debe ser lo mismo, hacer una consulta a una base de datos.
Cierto, Es lo mismo. Nunca he usado software para eso, Porque es lo mismo, Pero este me gusta mucho: link: [Perl Tk] LocateIP 0.4 PD: Descarga Perl, TK, y PerlAPP, Y podrás convertirlo a exe. Salu2.
|
|
|
11466
|
Programación / Scripting / Re: [BATCH] GTC (Google Translate Console)
|
en: 12 Abril 2012, 20:57 pm
|
ME dice que GTC no se reconoce y me manda como si hubiera habierto el cmd normal me sale el eco y todo. No entiendo el problema que tienes. Escribe en consola:
Asegúrate de que tienes la extensión BAT. Ejecuta la consola en la misma carpeta que el GTC, o metelo en la carpeta system32
|
|
|
11468
|
Programación / Scripting / Re: [BATCH] GTC (Google Translate Console)
|
en: 12 Abril 2012, 16:41 pm
|
Por cierto, ¿como consigues esos gráficos en tus aplicaciones, como el de GTC? ¿Es ASCII art? Le da un buen toque a la consola. Gracias por el comentario  Si, Es Art ASCII. Las fuentes de estilos las saqué de internet hace un tiempo y las guardé, No recuerdo la web, Pero ahora los hago con un programa en Ruby que tengo a medias (Es una taréa muy lenta, Más de 100 estilos de letra + caracteres especiales, Hay que "setear" letra por letra) Me falta terminarlo y hacer la gui. Se llamará Art ASCII FactoryEn cuanto lo termine todos los interesados podrán hacer facilmente esas letras xD PD: He actualizado el GTC a la v1.1 EDITO: La versión obligatoria de wget para usar el script (Eso parece ser) es esta: http://www.mediafire.com/?41476m73gbza1aj Salu2!
|
|
|
11469
|
Programación / Scripting / [BATCH] GTC (Google Translate Console)
|
en: 12 Abril 2012, 15:20 pm
|
 Una utilidad para traducir frases al vuelo desde la consola. Modo de empleo: GTC [Idioma de entrada] [Idioma de salida] [Texto] Ejemplo: GTC ES "Hello World" (El idioma de entrada se reconoce automaticamente por defecto.) Idiomas: AF: Africano AR: Árabe AZ: Azerbaijani BE: Bielorruso BG: Búlgaro BN: Bengalés CA: Catalàn CS: Checo CY: Galés DA: Danés DE: Alemàn EL: Griego EN: Inglés EO: Esperanto ES: Espa±ol ET: Estonio EU: Euskera FA: Persa FI: Finlandés FR: Francés GA: Irlandés GL: Gallego GU: Gujarati HI: Hindú HR: Croata HT: Haitiano HU: Húngaro HY: Armenio ID: Indonesio IS: Islandés IT: Italiano IW: Hebreo JA: Japonés KA: Georgiano KN: Kanada KO: Coreano LA: LatÝn LT: Lituano LV: Letón MK: Macedonio MS: Malayo MT: Maltés NL: Holandés NO: Noruego PL: Polaco PT: Portugués RO: Rumano RU: Ruso SK: Eslovaco SL: Esloveno SQ: Albanés SR: Serbio SV: Sueco SW: Suajili TA: Tamil TE: Telugu TH: Tailandés TL: Tagalo TR: Turco UK: Ucraniano UR: Urdu VI: Vietnamita YI: Yiddish ZH-CN: Chino (Simplificado) ZH-TW: Chino (Tradicional) IMPORTANTE: Para usar el script, Es necesario la utilidad wget.exe. http://sourceforge.net/projects/gnuwin32/files/wget/1.11.4/wget-1.11.4-bin.zip/download PARECE SER QUE NO FUNCIONA http://www.mediafire.com/?41476m73gbza1aj(Necesariamente esa versión) Capturas:  El code: @Echo OFF Title GoogleTranslateConsole v1.3 :: By Elektro H@cker
Wget 1>nul 2>&1 IF %Errorlevel% EQU 9009 (Exit /B 1)
Goto :Errorcontrol
:LOGO Echo+ Echo: GGGGGGGGGGGGG TTTTTTTTTTTTTTTTTTTTTTT CCCCCCCCCCCCC Echo: GGG::::::::::::G T:::::::::::::::::::::T CCC::::::::::::C Echo: GG:::::::::::::::G T:::::::::::::::::::::T CC:::::::::::::::C Echo: G:::::GGGGGGGG::::G T:::::TT:::::::TT:::::T C:::::CCCCCCCC::::C Echo: G:::::G GGGGGG TTTTTT T:::::T TTTTTT C:::::C CCCCCC Echo: G:::::G T:::::T C:::::C Echo: G:::::G T:::::T C:::::C Echo: G:::::G GGGGGGGGGG T:::::T C:::::C Echo: G:::::G G::::::::G T:::::T C:::::C Echo: G:::::G GGGGG::::G T:::::T C:::::C Echo: G:::::G G::::G T:::::T C:::::C Echo: G:::::G G::::G T:::::T C:::::C CCCCCC Echo: G:::::GGGGGGGG::::G TT:::::::TT C:::::CCCCCCCC::::C Echo: GG:::::::::::::::G T:::::::::T CC:::::::::::::::C Echo: GGG::::::::::::G T:::::::::T CCC::::::::::::C Echo: GGGGGGGGGGGGG Google TTTTTTTTTTT Translate CCCCCCCCCCCCC Console Echo+ Goto :EOF
:HELP Echo: Modo de empleo: | MORE Echo: GTC [Idioma de entrada] [Idioma de salida] [Texto] |MORE Echo: Ejemplo: | MORE Echo: GTC ES "Hello World" | MORE
Echo: (El idioma de entrada se reconoce automaticamente por defecto.) | MORE
Echo: Idiomas: | MORE Echo: AF: Africano AR: µrabe AZ: Azerbaijani BE: Bielorruso Echo: BG: B£lgaro BN: Bengal‚s CA: Catal…n CS: Checo Echo: CY: Gal‚s DA: Dan‚s DE: Alem…n EL: Griego Echo: EN: Ingl‚s EO: Esperanto ES: Espa¤ol ET: Estonio Echo: EU: Euskera FA: Persa FI: Finland‚s FR: Franc‚s Echo: GA: Irland‚s GL: Gallego GU: Gujarati HI: Hind£ Echo: HR: Croata HT: Haitiano HU: H£ngaro HY: Armenio Echo: ID: Indonesio IS: Island‚s IT: Italiano IW: Hebreo Echo: JA: Japon‚s KA: Georgiano KN: Kanada KO: Coreano Echo: LA: Latín LT: Lituano LV: Let¢n MK: Macedonio Echo: MS: Malayo MT: Malt‚s NL: Holand‚s NO: Noruego Echo: PL: Polaco PT: Portugu‚s RO: Rumano RU: Ruso Echo: SK: Eslovaco SL: Esloveno SQ: Alban‚s SR: Serbio Echo: SV: Sueco SW: Suajili TA: Tamil TE: Telugu Echo: TH: Tailand‚s TL: Tagalo TR: Turco UK: Ucraniano Echo: UR: Urdu VI: Vietnamita YI: Yiddish Echo: ZH-CN: Chino (Simplificado) Echo: ZH-TW: Chino (Tradicional) Exit /B 1
:Errorcontrol Setlocal Enabledelayedexpansion Set "Langs=AF:Africano, AR:µrabe, AZ:Azerbaijani, BE:Bielorruso, BG:B£lgaro, BN:Bengal‚s, CA:Catal…n, CS:Checo, CY:Gal‚s, DA:Dan‚s, DE:Alem…n, EL:Griego, EN:Ingl‚s, EO:Esperanto, ES:Espa¤ol, ET:Estonio, EU:Euskera, FA:Persa, FI:Finland‚s, FR:Franc‚s, GA:Irland‚s, GL:Gallego, GU:Gujarati, HI:Hind£, HR:Croata, HT:Haitiano, HU:H£ngaro, HY:Armenio, ID:Indonesio, IS:Island‚s, IT:Italiano, IW:Hebreo, JA:Japon‚s, KA:Georgiano, KN:Kanada, KO:Coreano, LA:Latín, LT:Lituano, LV:Let¢nMK:, Macedonio, MS:Malayo, MT:Malt‚s, NL:Holand‚s, NO:Noruego, PL:Polaco, PT:Portugu‚s, RO:Rumano, RU:Ruso, SK:Eslovaco, SL:Esloveno, SQ:Alban‚s, SR:Serbio, SV:Sueco, SW:Suajili, TA:Tamil, TE:Telugu, TH:Tailand‚s, TL:Tagalo, TR:Turco, UK:Ucraniano, UR:Urdu, VI:Vietnamita, YI:Yiddish, ZH-CN:Chino Simplificado, ZH-TW:Chino Tradicional" IF "%~3" EQU "" ( Echo "%LANGS%" | Find /I "%~1:" >NUL IF !Errorlevel! EQU 1 (Echo Idioma no reconocido & Exit /B 1) ) ELSE ( Echo "%LANGS%" | Find /I "%~1:" >NUL IF !Errorlevel! EQU 1 (Echo Idioma no reconocido & Exit /B 1) Echo "%LANGS%" | Find /I "%~2:" >NUL IF !Errorlevel! EQU 1 (Echo Idioma no reconocido & Exit /B 1) ) Setlocal Disabledelayedexpansion
:Translate Call :LOGO IF "%~1" EQU "" (Start /B CMD /Q %0) IF "%~2" EQU "" (Goto :HELP) IF "%~3" EQU "" (Set "LangIN=auto" & Set "LangOUT=%~1" & Set "String=%~2") ELSE (Set "LangIN=%~1" & Set "LangOUT=%~2" & Set "String=%~3") Set "String=%String: =+%" Set "String=%String:...=;;%" Set "String=%String:.=,,%" Set "String=%String:!=(;)%" WGET -U "Mozilla/5.0" -qO - "http://translate.google.com/translate_a/t?client=t&text=%STRING%&sl=%LangIN%&tl=%LangOUT%" -O "%TEMP%\GTC.html" For /F "Tokens=* Delims=;" %%a in ('Type "%TEMP%\GTC.html"') do (Set "Body=%%a")
SET "Cut=%Body:*","=%" CALL SET "Traduced=%%Body:%Cut%=%%" SET "Traduced=%Traduced:[[["=%" & REM " SET "Traduced=%Traduced: , ,=.%" SET "Traduced=%Traduced: (;)=!%" SET "Traduced=%Traduced: ( ;)=!%" SET "Traduced=%Traduced:(;)=!%" SET "Traduced=%Traduced:","=%"
:Print Setlocal Enabledelayedexpansion IF "%~3" EQU "" ( SET "LangINPrint=[AUTO]" SET "LangOUTPrint=!langs:*%1:=!" For /F "Tokens=1,* Delims=," %%# in ('Echo !LangOUTPrint!') Do (Set "LangOUTPrint=[%%#]") ) ELSE ( SET "LangINPrint=!langs:*%1:=!" SET "LangOUTPrint=!langs:*%2:=!" For /F "Tokens=1,* Delims=," %%# in ('Echo !LangINPrint!') Do (Set "LangINPrint=[%%#]") For /F "Tokens=1,* Delims=," %%# in ('Echo !LangOUTPrint!') Do (Set "LangOUTPrint=[%%#]") ) Setlocal Disabledelayedexpansion Echo: Texto a traducir %LangINPrint% : IF "%~3" EQU "" (Echo: [+] %~2 | MORE) ELSE (Echo: [+] %~3 | MORE) Echo: Texto traducido %LangOUTPrint% : Echo: [+] %Traduced% Exit /B 0 PD: Cualquier bug o mejora comenten, Gracias. Salu2.
|
|
|
11470
|
Media / Diseño Gráfico / Re: archivos jpeg.REM
|
en: 12 Abril 2012, 11:19 am
|
La extensión .REM suele ser un añadido (REM = REMOVE) por algún programa. En esos casos el archivo es un archivo intacto, Sigue siendo la misma extensión, El mismo archivo, Solamente que está marcado para su eliminación (Manual). Es como un .BAK o .TMP
Simplemente renombra el archivo: De: Archivo.jpeg.rem A: Archivo.jpeg ... A ver si funciona.
Salu2.
|
|
|
|
|
|
|