“Conocimiento Sistemas>unix

¿Cuál es el comando para enumerar todos los archivos que terminan en letras pequeñas Unix?

2011/6/12
No puede enumerar directamente archivos que terminan solo en letras minúsculas con un solo comando y globos de archivos básicos. He aquí por qué y cómo trabajar con él:

Por qué es complicado:

* Globbing básico: Las conchas UNIX estándar usan patrones de globos básicos (*,?, [], Etc.). Estos pueden coincidir con cualquier caso de caracteres, pero no pueden distinguir entre mayúsculas y minúsculas para un filtrado específico.

La solución:usando `find` y` grep`

Puede combinar `Find` y` Grep` para lograr esto. Aquí está como:

`` `Bash

encontrar . -type f -print0 | Grep -Ez '^./[^/]*[A -Z] \.? [^/]*$' | xargs -0 ls -l

`` `` ``

Explicación:

1. `encontrar. -type f -print0`:

- `Find. ':Comienza a buscar en el directorio actual (`.')

- `-Type F`:busca solo archivos regulares

- `-Print0`:Imprime archivos encontrados separados por caracteres nulos (más seguro para nombres de archivo con espacios)

2. `Grep -Ez '^./[^/]*[A -Z] \.? [^/]*$'`:

- `Grep`:filtra la salida de` Find`

- `-e`:habilita expresiones regulares extendidas para obtener más flexibilidad

-`-z`:trata la entrada como cadenas terminadas

- La expresión regular:

- `^./`:Coincide con el comienzo de la línea, seguido de "./" (para que coincida con rutas relativas)

- `[^/]*`:coincide con cualquier caracteres excepto "/" (asegurando que todavía estemos dentro del nombre de archivo)

- `[A-Z]`:coincide con una sola letra minúscula

- `\.

- `$`:coincide con el final de la línea

3. `xargs -0 ls -l`:

-`xargs -0`:toma la lista de archivos terminado nulo de 'Grep` y construye argumentos de comando

- `ls -l`:enumera los archivos (puede cambiar esto a cualquier comando que desee ejecutar en los archivos filtrados)

Notas importantes:

* Archivos ocultos: Esto encontrará archivos ocultos (comenzando con '.') Que cumplen con los criterios.

* Sensibilidad de casos: La expansión del nombre de archivo de su caparazón puede ser sensible a los casos o insensibles.

¡Avísame si quieres refinar la búsqueda más!

unix
¿Qué es un caparazón en Linux?
¿Cuáles son los diferentes tipos de almacenamiento en búfer en Unix?
¿Qué se entiende por el término símbolo del sistema?
¿Cuál es la diferencia entre LWP y subprocesos?
Unix Patch Tutorial
Cómo comprobar el tiempo total de CPU usado en Unix
Cómo agregar Dirección Gateway en SCO Unix
¿Cuál es el propósito de tener más parámetros al final de la línea de comando?
Conocimiento de la computadora © http://www.ordenador.online