2 votos

Crear archivos ZIP que contengan archivos relacionados de varias carpetas

¿Hay alguna forma de automatizar la creación de ZIPs que contengan archivos con elementos de nombre comunes?

Lo que tengo son múltiples variaciones de la misma imagen:

archivos/2250/ 8199 imprimir.jpg

archivos/1200x1200/ 8199 cuadrado.jpg

archivos/1200x900/ 8199 ancho1.jpg

archivos/1200x628/ 8199 ancho2.jpg

archivos/480x360/ 8199 pequeño.jpg

Lo que me gustaría hacer es crear algún tipo de aplicación que entre en las carpetas, encuentre los archivos relacionados (todos contienen "8199") y los archive todos en un nuevo archivo llamado "cartoon8199.zip".

Intenté crear una aplicación a través de Automator, pero no pude averiguar cómo hacer que el campo Name Contains en Find Finder Items incluya una variable.

¿Alguna idea sobre cómo conseguirlo?

Estoy en un Mac con HighSierra 10.13.3.

Gracias de antemano.

0 votos

Debería haber especificado que los archivos ZIP resultantes irían en una carpeta diferente llamada files/zips

0 votos

¿Desea comprobar carpetas específicas o revisar toda la unidad?

0 votos

Sólo carpetas específicas.

1voto

Pirooz Puntos 486

Aquí tienes tu script como prometiste. ¿Alguna pregunta o sugerencia? Comenta abajo :)

Qué hace el script : Busca carpetas en una carpeta seleccionada. Busca archivos en cada una de ellas. Si esos archivos contienen un parámetro de búsqueda especificado, el archivo se mueve a una carpeta en una ubicación especificada. Una vez comprobados todos los archivos, los archivos de las carpetas en la ubicación especificada se comprimen.

Para lo que quieras: Primer aviso elija el /files carpeta. En la segunda pregunta, introduzca 8199 .

El script:

set myFolder to choose folder with prompt "Choose a Folder" # Choose the /files folder
display dialog "Enter Your Search Paramaters" default answer "" #Enter "8199"
set mySearch to the text returned of the result
set myZipLocation to the POSIX path of (choose folder with prompt "Choose where to save your ZIP file")
display dialog "Enter the Name of Your Compress File" default answer ""
set myZip to the text returned of the result
tell application "Finder"
    set myFolders to every folder in folder myFolder
    set myFiles to {""}
    repeat with i in myFolders
        set myFiles to myFiles & every file in i
    end repeat
    do shell script ("mkdir " & the quoted form of (myZipLocation & "/" & myZip))
    repeat with i from 2 to count of myFiles
        if the name of (item i of myFiles) contains mySearch then
            set myPOSIX to the quoted form of (the POSIX path of (item i of myFiles as alias))
            do shell script "cp " & myPOSIX & " " & the quoted form of ((myZipLocation & "/" & myZip) & "/" & the name of (item i of myFiles))
        end if
    end repeat
    do shell script "cd " & the quoted form of myZipLocation & "&& zip -r " & quoted form of (myZip & ".zip") & " " & quoted form of myZip
end tell

0 votos

@Andertoons ¿Cómo funcionó?

0 votos

@Andertoons ¡Genial! Me alegro de haber podido ayudar. Si esto resuelve tu problema, por favor vota y marca como resuelto para ayudar a otros usuarios a encontrar esta respuesta.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X