¿Lista todos los files que terminan con varias extensiones de file?

Si quiero files que terminen en .fas , sé que puedo hacer lo siguiente con el command ls :

 ls -l /users/jenna/bio/*.fas 

y esto enumera todos los files que terminan con .fas . Pero, ¿cómo puedo get files que terminen con .fas o .pep ?

ls -l /users/jenna/bio/(*.fas | *.pep) no parece funcionar? Sé que podría haber otros commands que pueden hacer esto, pero ¿hay alguna manera de hacerlo funcionar con ls ?

Gracias por cualquier ayuda !

Related of "¿Lista todos los files que terminan con varias extensiones de file?"

Usa esto: ls -l /users/jenna/bio/*.{fas,pep}

O esto: find /users/jenna/bio -iname '*.pep' -or -iname '*.fas'

Lo más probable que salga de la caja es la expansión del aparato ortopédico . Funciona en bash, zsh y ksh.

 ls -l /users/jenna/bio/*.{fas,pep} 

(No hay espacios alnetworkingedor de las llaves)

En bash y ksh, esto muestra un error si una de las extensiones no coincide, pero enumera los files que coinciden con la otra extensión de todos modos. La razón para esto es que la expansión de llaves no es una function de coincidencia de comodines, sino un reemploop textual: *.{fas,pep} se convierte a *.fas *.pep antes de que el shell comience a search los files que coinciden con los patrones. En zsh, obtendrá un error y el command no se ejecutará, pero hay una mejor manera: un patrón de "o" glob . Este no tendrá errores, a less que ninguna de las extensiones coincida.

 ls -l /users/jenna/bio/*.(fas|pep) 

O los patrones también están disponibles con una syntax diferente : @(…|…) ; en bash, esta syntax debe activarse con shopt -s extglob , y en zsh, esta syntax debe activarse con setopt ksh_glob .

 ls -l /users/jenna/bio/*.@(fas|pep) 

(Parte de este comportamiento se puede configurar. Todas mis declaraciones se aplican a la configuration pnetworkingeterminada de las shells a less que se especifique explícitamente).

Cuando desee escanear de forma recursiva sin los molestos errores que normalmente obtiene de find o ls (como: " Permiso denegado ", " No es un directory ") que puede frenar scripts o commands xargs , también el command de tree no se mencionó aquí:

 tree -fai / | grep -e ".fas$" -e ".pep$" 

arriba utilicé la raíz / , pero puede ser cualquier ruta:

 tree -fai /users/jenna/bio/ | grep -e ".fas$" -e ".pep$"" 

Por cierto