Ir al contenido principal

Entradas

Mostrando entradas de enero, 2014

extract-txt-bin-portions.pl: programa el Perl para encontrar cadenas UTF-8 en archivos binarios sin formato

# Lee un archivo mixto UTF-8 - no UTF-8 # output: # Repeticiones de las líneas de texto: # "bin: " byte-inicial-secuencia-no-UTF-8 byte-final-secuencia-no-UTF-8 # "txt: " byte-inicial-secuencia-UTF-8 byte-final-secuencia-UTF-8 # por orden de aparición de las secuencias (orden normal de los bytes dentro del archivo) open my $fh, "<:raw", @ARGV[0] or die "cannot open < @ARGV[0]: $!"; my $i = 0; my $ini_ciclo_bin = 1; my $length = read $fh, my $byte, 1; $i += $length; # print "a ".unpack("B*", $byte) . "\n"; my $ini_bin; my $fin_bin; my $ini_txt; my $fin_txt; while($length) { # ciclo bin while($length and not unpack("B*", $byte) =~ /^(0|110|1110|11110|111110|1111110).*/) { $length = read $fh, $byte, 1; $i += $length; # print "b ".unpack("B*", $byte) . "\n"; } # ciclo txt # inicialización secuencia txt $ini_txt = $i; $fin_txt = 0; ...

Notas sobre dd

Interpretación de la pág. man dd: Extracto: "Si la opción bs=bytes se dio, y  no  se  especificó  una  conversión aparte  de  sync,  noerror,  o  notrunc,  escribe  la cantidad de datos leídos (que podría ser menor de la pedida) en  un  bloque  de  salida separado." Interpretación de "escribe la cantidad de datos leídos": significa que bs=x ==es equiv. a== ibs=x y obs=x, en las circunstancias descriptas. Interpretación de "bloque  de  salida separado": Así como "sed" tiene un "pattern space" y "otro buffer auxiliar" en donde se escribe el input y se puede manipular antes de que salga el output, algo similar es la forma de trabajo de "dd" con su "bloque de salida" ("separado" = nuevo / a parte de cualquier bloque de salida existente). Interpretación de la pág. man dd: Extracto: "...poner bs no es equivalente a poner ibs y obs a su mismo valor, al menos si no se ha especificado una conv...

Notas sobre grep

grep puede buscar en archivos mixtos: - porciones / secuencias de bytes dentro del archivo como "Codificación reconocida / texto" y - porciones / secuencias de bytes dentro del archivo como "Codificación no reconocida / binario" Output de grep: "Coincidencia en el archivo binario." en tal caso.

Notas sobre sed y Bash

- Los cuantificadores de expresiones regulares machean modo greedy por default (lo normal). Falta ver si hay un modificador para cambiar a modo non-greedy. - Las REGEX pasadas a sed desde Bash y sin comillas ("" de Bash), esto es: s/REGEX_sin_comillas/.../, primero pasan por el intérprete de comandos y hay que respetar todas las reglas de escape de Bash. Ej. 1: - manual de sed: REGEX=\[ matches [ - desde la línea de comando (sin el auxilio de las comillas "" Bash): \\[ reduce a \[ machea [. Ej. 2:  - manual de sed: REGEX= (espacio en blanco) machea (a sí mismo, caracter de espacio en blanco) - desde la línea de comando: \ (secuencia contrabarra espacio en blanco), reduce a (espacio en blanco) ==> entra dentro de sed ==> machea (a sí mismo, espacio en blanco). Ej. 3: - manual de sed: \( abre un capturing group - desde la línea de comando: \\\( ==> \\ reduce a \, \( reduce a ( ==> entra en sed como \( Con comillas "" de Bash, el inté...

Matemática II

33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. Ver 42 44. 45. 46. 47. 48. 49. 50. Bookboon Wikibooks, subjects. Differential and Integral Calculus : N. Piskunov : Free Download & Streaming : Internet Archive: What Is an Algorithm? Algorithms - Wikibooks, open books for an open world Computers and Information Processing - PHI Learning Introduction to algorithms 3rd edition Solutions for Introduction to algorithms second edition PDF - Ebookily.org