El primer cas que demanaves sembla fàcil grep -f fitxer_regexps.txt fitxer_nums.txt Pel segon no sé cap comanda directa, potser alguna cosa tipus #!/bin/bash text=${1:-93123111} fitxer_regexps=${2:-fitxer_regexps.txt} for r in $(< "$fitxer_regexps") ; do { grep -qE "$r" - <<< "$text" && echo "$r" ; } ; done Però això podria ser més eficient si t'ho programes el perl o python o el que sigui...