Herramienta de filtrado, extraccion y postprocesado de texto estructurado.
> tijeras FLAGS [INPUT_FILE|#COMMAND|-]
Tijeras es un programa de linea de comandos que permite recortar el texto
de entrada y seleccionar sus columnas.
Seleccion de columnas:
-f FIELDS [+] Selecciona columna(s) a emitir
-a, --all Equivalente a -f1 -f2 -f3 -f4...
--text STRING [+] Emitir columna literal. Equivalente a -ftext=STRING
-n Emitir un newline literal. Equivalente a -ftext=~n
Particionado de columnas:
-d DELIMITER [+] Separador de columnas (por defecto: espacios+tabs).
-D DELIMITER Equivalente a -d DELIMITER --output-delimiter DELIMITER.
--detect Detectar separador automaticamente.
-w Separar por espacios/tabs. Equivalente a -d ' ' -d '\t'
--csv Procesar fichero CSV (comma-separated values).
Equivalente a -d ',' --header
--anchor PREFIX Extender la primera columna hasta encontrar el
substring PREFIX, ignorando cualquier delimitador.
--fields NUMFIELDS Parsear hasta una cantidad maxima de columnas.
-NUMFIELDS para hacer parsing de derecha a izquierda.
--nld, --no-leading-delimiter
Omitir separador al comienzo de linea
-e, --empty-columns Respeta las columnas vacias.
Filtros:
-s, --only-delimited Emitir solo lineas que contienen separador.
-t, --strict Emitir solo lineas cuyas columnas seleccionadas existan.
-T, --superstrict Finaliza el programa cuando una linea no tiene las
columnas seleccionadas.
-p PATTERN[:FORMAT], --pattern PATTERN[:FORMAT] [+]
Procesar solo lineas que contienen el patron indicado.
Continuar procesando el trozo de texto encontrado.
-P PATTERN [+] Equivalente a --pattern pero se continua procesando la
linea original.
-Q PATTERN [+] Excluir lineas mediante patron.
--range NUMFIELDS Procesar solo lineas que contienen NUMFIELDS columnas.
+NUMFIELDS para indicar una cantidad igual o mayor
de columnas. -NUMFIELDS para una cantidad igual o menor.
-k NUMLINES, --skip NUMLINES
Ignorar las primeras N lineas.
-l NUMLINES, --limit NUMLINES
Procesar N lineas y terminar.
--last NUMLINES Emitir las ultimas N lineas.
Postprocesamiento:
--od OUTPUT_DELIMITER, --output-delimiter OUTPUT_DELIMITER
Emitir columnas unidas con el delimitador indicado
(por defecto: tab)
--space Equivalente a --od ' '
--newline Equivalente a --od '~n'
--fill STRING Rellena columnas invalidas con el texto indicado
--strip STRING [+] Recorta texto a los extremos de las columnas
--stripw Shortcut de --strip para recortar espacios/tabs.
--words, --strip-non-words
Recorta caracteres que no sean letras/numeros a los
extremos de las columnas.
--trim MAX_COLUMN_SIZE
Recorta columnas que exceden el ancho maximo indicado.
--trim-point anywhere|prefer-word
NOT IMPLEMENTED YET
--trim-ellipsis STRING
Adjuntar STRING a cada columna recortada con --trim.
--wrap MAX_COLUMN_SIZE
Recorta columnas que exceden el ancho maximo indicado
y distribuye su contenido en varias lineas.
--wrap-point anywhere|prefer-word
NOT IMPLEMENTED YET
--align left|center|right|maxleft|maxcenter|maxright
Alinea columnas en la orientacion indicada rellenando
con espacios segun corresponda. Se puede combinar con
--trim o --wrap
--rl, --rotate-left Rotar el texto final como un bloque en sentido
contrario al reloj.
--rr, --rotate-right Rotar el texto final como un bloque en sentido
del reloj.
Ordenamiento de columnas:
--asc FIELDS Ordenar de manera ascendente la(s) columna
especificada.
Permite clave compuesta F1,F2,F3...
--desc FIELDS Ordenar de manera descendente
--sort literal|numeric|smart|ext|date|size|isosize|units=U1,U2,U3...
Modo de ordenamiento (por defecto: literal)
--min Equivalente a --asc 1 --sort smart --limit 1 -f 1
--max Equivalente a --desc 1 --sort smart --limit 1 -f 1
--dedup FIELDS Descarta columnas repetidas.
Permite clave compuesta F1,F2,F3...
Modos de lectura:
-m, --merge Integra las lineas de varios ficheros de entrada como
columnas de una misma linea.
--series NUMLINES|SERIES_DELIMITER
Integra series de lineas consecutivas como columnas de
una misma linea.
--series-end SERIES_END_DELIMITER
Procesa series de lineas consecutivas hasta el delimitador
de cierre indicado.
--flatten Integra todas las lineas como columnas de una sola linea.
Implica --newline si --od no se declara.
--par, --paragraph Procesa input como parrafos de texto. Donde cada
columna es una linea del parrafo.
--chars Modo de seleccion de caracteres (sin separador).
-R, --reverse Lee lineas en orden invertido
Run API:
--begin CODE Execute python code at program start.
--run CODE Execute python code in every line iteration.
--end CODE Execute python code at program end.
--sum Assume columns contain only numbers and sum them all.
Print results for each column.
--count Count lines.
**Initial run environment**
Variables: LINENO, LINE, COLUMNS, C, RESULT
Funciones: F(N), F(N,M), kv(DEFAULTVALUE), emit(*STRING),
ignore(), discard(), stop(), abort(), shell()
Otras opciones:
-H, --header La primera linea contiene los nombres de cada columna.
Permite seleccionar columnas por nombre.
Por ejemplo -fid, -fname, -fage, -fcity...
-r, --regex Utiliza sintaxis regex en expresiones -dDELIMITER,
-fFIELDS/PATTERN, -pPATTERN, -PPATTERN,
--series=SERIES_DELIMITER y
--series-end=SERIES_END_DELIMITER.
-i, --ignorecase Prueba regexs en modo case-insensitive.
--mp, --multiline-pipes
Procesa el output completo en tuberias y llamadas a
sistema, en vez de leer solo la primera linea.
--bad-lines Emitir solo lineas que no pasan los filtros -s, --strict,
--num-fields o --pattern.
-y, --summary Al finalizar presenta un resumen de ejecucion.
-Y, --summary-lines Presenta resumen incluyendo un dump de las lineas
emitidas.
--report Muestra los argumentos de invocacion al iniciar
--debug Mostrar trazas de funcionamiento del programa
-q, --quiet Silenciar mensajes de advertencia
Ayuda:
-? Mostrar opciones disponibles (vista compacta).
-h, --help Mostrar opciones disponibles.
-hh, --long-help Mostrar opciones disponibles (vista extendida).
--syntax Mostrar resumen sintactico de las opciones.
--tutorial Mostrar tutorial con ejemplos.
Para configurar globalmente escriba en su shell. Por ejemplo:
> export TIJERASFLAGS="--report --debug"
Copyright (c) 2018-2025, Franklin Brauning.