Archivos Cat excepto uno

Estoy buscando algo para concatenar todos los files con extensión dada dentro de un directory, excepto uno. Me gusta:

cat *.txt !(DISCARD.txt) > catKEPT 

Esto debería concatenar todos los files * .txt en el directory, excepto DISCARD.txt.

 find . -maxdepth 1 -iname '*.txt' -not -name 'DISCARD.txt' -exec cat {} +>catKEPT 

Si usa bash (la mayoría de las veces este es el caso), puede usar la opción extglob shell que ampliará su caparazón con una syntax de coincidencia de patrones más poderosa.

Puede activarlo con shopt -s extglob y desactivarlo con shopt -u extglob .

En tu ejemplo, simplemente harías:

 $ shopt -s extglob $ cat -- !(DISCARD).txt > catKEPT 

Puede encontrar más acerca de este command en esta respuesta de StackOverflow .