Cómo buscar en Mac los archivos que comienzan o terminan con un espacio "" o un período ".

2

Solo necesito saber cómo buscar (dentro de Finder vs Terminal, si es posible) todos los nombres de archivos dentro de una carpeta específica, que comienzan o terminan con un espacio o un punto.

Por ejemplo:
"file.jpg" (comienza con un espacio)
"archivo .jpg" (termina con un espacio)
"file..jpg" (termina con un punto

Además, encontrar un nombre de archivo con los caracteres * o "en él. Buscarlo en el nombre de archivo usando Finder produce miles de resultados que en realidad no tienen * ni" en él. Ejemplo: "fil * e.jpg" o "fil" e.jpg "

Jake
fuente

Respuestas:

3

Con Finder como la aplicación activa, elija Find desde el File menú. En el Searching "This Mac" ventana que aparece, seleccione Kind es Document, luego usar + para agregar otra condición con Name como el primer elemento. Si tu eliges begins with como segundo elemento, puede encontrar archivos cuyos nombres comiencen con un carácter particular, como el espacio. los ends with condición no encontrará archivos con los nombres en sus ejemplos a menos que el sufijo del nombre de archivo termine con el carácter de interés, pero puede encontrar un carácter particular, como un espacio, como el último carácter antes del sufijo si elige contains y sigue a ese personaje con .. Para tu file..jpg ejemplo que usarías .. para el texto de búsqueda. Este enfoque encontrará literal * caracteres en los nombres de archivo, si lo desea contains y use * para el texto de búsqueda.

Encontrar tales archivos con el find comando (en Terminal ) es sencillo si usted cita adecuadamente los caracteres especiales. Por ejemplo,

find Downloads -name ' *' -ls

reporta todos los archivos en mi directorio de descargas que comienzan con un espacio,

find Downloads -name '*\**' -ls

reporta todos los archivos en mi directorio de descargas con una * en su nombre,

find Downloads -name '*\.\.*' -ls

reporta todos los archivos en mi directorio de descargas con dos consecutivos . personajes en su nombre, y

find Downloads -name '* .*' -ls

reporta todos los archivos con un carácter de espacio inmediatamente antes del sufijo. Finalmente,

find Downloads -name ' *' -ls -o -name '*\**' -ls -o -name '*\.\.*' -ls -o -name '* .*' -ls

reporta todos esos archivos en mi directorio de descargas. Puede anclar la búsqueda en otro lugar reemplazando Downloads en la línea de comandos, y puede usar otras opciones para restringir aún más la búsqueda ( -type f ignoraría directorios y enlaces simbólicos).

Eirik Fuller
fuente
0

Para iluminar y ampliar un poco la respuesta de Eirik:

Las instrucciones que te ha proporcionado son esencialmente las mismas que utilizarías en el terminal, pero con algunos detalles ocultos.

Supongo que está buscando limpiar nombres de archivos, por lo que esto es algo para lo que el terminal es realmente muy bueno: precisamente, de hecho, por qué se conserva en cualquier sistema operativo moderno.

Si está interesado, avíseme y veré cómo agregar más detalles sobre qué escribir para (a) encontrar todos los archivos que coincidan con sus características y (b) corregir sus nombres (manteniendo copias de seguridad en caso de inquietud) en un comando puedes pegar en el terminal. :)

J. Bra
fuente