Awk filtro condicional un archivo basado en otro (u otras soluciones)

El principiante de programación aquí necesita ayuda para modificar un script AWK para que sea condicional. Soluciones alternativas no-awk también son muy bienvenidas.

NOTA El filtro principal ahora está funcionando gracias a la ayuda de Birei, pero tengo un problema adicional, vea la nota a continuación para obtener detalles.

Tengo una serie de archivos de entrada con 3 columnas así:

chr4    190499999   190999999
chr6    61999999    62499999
chr1    145499999   145999999

Quiero usar estas filas para filtrar otro archivo (refGene.txt) y si una fila en el archivo uno calcula una fila en refGene.txt, para enviar la columna 13 en refGene.txt a un nuevo archivo 'ListofGenes_ $ f'. La parte difícil para mí es que quiero que cuente como una coincidencia, siempre y cuando la columna uno (por ejemplo, 'chr4', 'chr6', 'chr1') y la columna 2 Y / O la columna 3 coincida con las columnas equivalentes en el gen ref. archivo txt Las columnas equivalentes entre los dos archivos son $ 1 = $ 3, $ 2 = $ 5, $ 3 = $ 6. Entonces no estoy seguro en awk cómo no imprimir toda la fila desde refGene.txt pero solo la columna 13.

NOTA He logrado el filtrado condicional descrito anteriormente gracias a la ayuda de Birei. Ahora necesito incorporar una condición de filtro adicional. También debo generar la columna $ 13 del archivo refGene.txt si alguna de las regiones entre el valor $ 2 y $ 3 se superpone con la región entre $ 5 y $ 6 en el archivo refGene.txt. Esto parece mucho más complicado ya que involucra el cálculo matemático para ver si las regiones se superponen.

Mi guión hasta ahora:

FILES=/files/*txt   
for f in $FILES ;
do

    awk '
        BEGIN {
            FS = "\t";
        }
        FILENAME == ARGV[1] {
            pair[ $1, $2, $3 ] = 1;
            next;
        }
        {
            if ( pair[ $3, $5, $6 ] == 1 ) {
                print $13;
            }
        }
    ' $(basename $f) /files/refGene.txt > /files/results/$(basename $f) ;
done

Cualquier ayuda es muy apreciada. ¡Muchas gracias!

Rubal

Respuestas a la pregunta(1)

Su respuesta a la pregunta