Cómo buscar archivos en Mac que comiencen o terminen con un espacio " " o un punto "."

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:
" archivo.jpg" (comienza con un espacio)
"archivo .jpg" (termina con un espacio)
"archivo..jpg" (termina con un punto

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

Respuestas (2)

Con Findercomo la aplicación activa, elija Finddel Filemenú. En la Searching "This Mac"ventana que aparece, seleccione Kindis Document, luego use +para agregar otra condición Namecomo el primer elemento. Si elige begins withcomo segundo elemento, puede encontrar archivos cuyos nombres comiencen con un carácter particular, como un espacio. La ends withcondició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 y sigue ese carácter contains. con ._ Para su file..jpgejemplo, usaría ..para el texto de búsqueda. Este enfoque encontrará literal*caracteres en los nombres de archivo, si elige containsy utiliza *para el texto de búsqueda.

Encontrar dichos archivos con el findcomando (en Terminal) es sencillo si cita los caracteres especiales de manera apropiada. Por ejemplo,

find Downloads -name ' *' -ls

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

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

informa todos los archivos en mi directorio de descargas con un *en su nombre,

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

informa todos los archivos en mi directorio de Descargas con dos caracteres consecutivos .en su nombre, y

find Downloads -name '* .*' -ls

informa 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

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

¿Cómo busca carpetas ocultas que comienzan con . (punto) por ejemplo, .venv ?
Un comando como find Downloads -name '\.*' -ls(con una sustitución adecuada para Downloadsdebería funcionar, en Terminal.
Finderno parece mostrar nombres que comiencen con .en sus búsquedas, ya sean carpetas o no, al menos con macOS 10.12.6 (no he probado versiones más nuevas).
Si solo desea mostrar carpetas, un comando como find Downloads -type d -name '.*' -lsdebería funcionar.

Para iluminar y ampliar un poco la respuesta de Eirik:

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

Mi suposición es que está buscando limpiar los nombres de los archivos, por lo que esto es algo para lo que la terminal es realmente muy buena: precisamente, de hecho, por qué se conserva en cualquier sistema operativo moderno.

Si está interesado, hágamelo saber 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 que puede pegar en la terminal. :)