“Conocimiento Sistemas>unix

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

2013/1/21
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
¿Este sistema Unix es un sistema de multiprocesamiento?
¿Qué almacena la tienda de bytes?
¿Se ejecutarán los emuladores de Unix en Windows7?
Unix Training System Administrator
¿Qué son las palabras de órdenes?
¿Cuál es el propósito del perfil en Unix?
¿Qué es el alfabeto en binario?
Cómo convertir una fecha que marca de tiempo Unix en COBOL
Conocimiento de la computadora © http://www.ordenador.online