Txr

Una utilidad de coincidencia de patrones para una extracción de texto conveniente
Descargar ahora

Txr Clasificación y resumen

Anuncio publicitario

  • Rating:
  • Licencia:
  • BSD License
  • Precio:
  • FREE
  • Nombre del editor:
  • Kaz Kylheku
  • Sitio web del editor:
  • http://common-lisp.net/project/meta-cvs/

Txr Etiquetas


Txr Descripción

Una utilidad de coincidencia de patrones para una extracción de texto conveniente TXR es un intérprete para el idioma de consulta TXR. Una consulta TXR coincide con el texto y extrae las piezas al atarlas a las variables que están incrustadas en la consulta. TXR puede emitir los enlaces crudos recopilados de los datos, o sustituirlos a un informe basado en la plantilla. En freat, pero ya tenemos SED, AWK, PERL ... Aunque estas herramientas admiten el patrón que coinciden en forma de expresiones regulares, lo hacen No implementa un patrón de entrada integral que coincide con el paradigma como txr.all, pero las tareas de extracción de texto más simples son difíciles con SED, que es básicamente un programa de filtrado de regexp. Cuando el formato de datos abarca varias líneas que se correlacionan juntas, SED comienza a mostrar su debilidad. AWK y PERL están programando lenguajes. Se pueden usar para realizar una extracción de texto complejo, pero se expresa como un algoritmo. Un patrón es un formulario que se parece a lo que coincide. Un programa Perl o AWK no es un patrón; no tiene parecido con los datos que se están procesando; Describe los pasos detallados del proceso más que los datos. Para muchos de estos procesos, se puede escribir una consulta TXR más clara y más sucia para hacer lo mismo. Se puede dibujar una analogía a otros idiomas patrón, como las gramáticas. Una gramática BNF describe un idioma de una manera que, por ejemplo, el código fuente de C ++ de un analizador de descenso recursivo no cumple con la consulta TXR, el usuario generalmente se inicia con los datos de muestra. Los datos crudos en sí ya son probables una consulta TXR que coincida con sí misma, después de que se apruebe la atención para escapar de algunos personajes que tienen un significado especial para TXR. Todo lo que queda es identificar las partes que deben ser variables, y resumir las variaciones para que la consulta generalice a todas las instancias de los datos. En resumen, ha llegado una extracción verdaderamente práctica y un lenguaje de informe, y su nombre es TXR .Hablar es barato; ¿Qué tal un ejemplo? Bien. En lugar de "Hola, mundo", ¿qué hay de algo más avanzado? Una herramienta que no me gusta en Unix y Linux es la utilidad PS para los procesos de listado. He estado usando Unix desde 1989 y Linux desde 1993, y no soy tonto; Sin embargo, cada vez que necesito PS para hacer algo ligeramente fuera de lo común, tengo que recurrir a la página del hombre, y luego todavía no puedo conseguir que haga lo que quiero la mitad del tiempo. Con TXR, podemos hacer fácilmente un TXR. Utilidad de PS rápida y sucia (que se basa en el sistema de archivos / proc en Linux). Aquí es lo que se ve la consulta. Esto podría guardarse en un archivo llamado Ps.TXR: @ (Siguiente) $ / proc @ (cobro) @ {proceso / + /} @ (Siguiente) / Proc / PROCESS / STUCHADNAME: @ @namestate : @ @state (@state_desc) @ (Skip) TGID: @ @tgidpid: @proc_idppid: @ @@ir_id @ (enlace Pid Proc_ID) @ (enlace PPID PADRE_ID) @ (SKIP) UID: @ @ _ @ @ @ / @ @ @ @ @ @ / * / GID: @ @ gid @ /. * / @ (Siguiente) $ / proc / @ proceso / task @ (cobro) @ thr @ (final) @ (enlace THR) @ (algunos) @ (Siguiente) / etc / passwd @ (skip) @user: @pw: @uid: @ /. * / @ (o) @ (enlace usuario uid) @ (final) @ (final) @ (salida) usuario PID PPID S Nombre Threads @ (Repetir) @ {usuario 8} @ {proc_id -5} @ {PADR_ID -5} @State @ {Name 16} @ (Rep) @thth, @ (FIRST) @ (Último) @ THR @ (SINGLE) ~ @ (Fin) @ (Fin) @ (FIN) Ahora, podemos ejecutar la consulta como esta: Shell $ TXR Ps.TxRwe Obtenga la salida que se ve así: Usuario PID PPID S Nombre ThreadsRoot 10 S Init ~ Root 21 S Ksoftirqd / 0 ~ raíz 31 s eventos / 0 ~ raíz 43 s khelper ~ raíz 53 s kacpid ~ raíz 163 s kblockd / 0 ~ raíz 293 s aio / 0 ~ raíz 171 s khubd ~ raíz 29542953 s bash ~ (...] root 161341887 s sshd ~ kaz 1613616134 s sshd ~ kaz 1613716136 s bash ~ kaz 3628 2175 S SLRN ~ Root 37211963 S Crond ~ Root 37223721 S Piezas de ejecución ~ raíz 37233722 S 00-Logwatch ~ Root 37243722 S Awk ~ Root 39403723 S Mail ~ Root 40493723 S ZZ-Disk_Space ~ Root 40514049 S DF ~ Root 40524049 S GREP ~ KAZ 42661 S SSH-AGENT ~ KAZ 433116137 S VIM ~ KAZ 442631908 R TXR ~ La consulta TXR funciona al procesar las entradas numéricas en el directorio / proc, leyendo el / proc / / Archivo de estado de cada proceso, y la lista de hilos bajo / proc / / tareas. Los ID de usuario se resuelven coincidentes a través del archivo / etc / passwd. ¿Qué hay de nuevo en este lanzamiento: · Hay una nueva directiva de forma libre para una coincidencia no estructurada en varias líneas. · Las variables se pueden vincular a las regiones y se usan para emparejarse.


Txr Software relacionado