Crear archivos ZIP que contengan archivos relacionados de varias carpetas

2

¿Hay alguna forma de automatizar la creación de ZIP que contengan archivos con elementos de nombre común?

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

files / 2250 / 8199 print.jpg

files / 1200x1200 / 8199 square.jpg

files / 1200x900 / 8199 wide1.jpg

files / 1200x628 / 8199 wide2.jpg

archivos / 480x360 / 8199 small.jpg

Lo que me gustaría hacer es crear algún tipo de aplicación que vaya a las carpetas, encuentre archivos relacionados (todos contienen "8199") y luego los archiva 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 Nombre Contiene en los elementos del Finder Finder incluya una variable.

¿Alguna idea sobre cómo lograr esto?

Estoy en una Mac que ejecuta HighSierra 10.13.3.

Gracias de antemano!

    
pregunta Andertoons 25.06.2018 - 20:59

1 respuesta

0

Aquí está su guión como se prometió. ¿Alguna pregunta o sugerencia? Comenta abajo :)

Lo que hace el script : busca carpetas en una carpeta seleccionada. Busca a través de cada uno de esos archivos. Si esos archivos contienen un parámetro de búsqueda especificado, entonces el archivo se mueve a una carpeta en una ubicación especificada. Una vez que se verifican todos los archivos, los archivos en las carpetas en la ubicación especificada se comprimen.

Para lo que desee: Primer aviso, elija la carpeta /files . En la segunda solicitud ingrese 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
    
respondido por el JBis 26.06.2018 - 04:05

Lea otras preguntas en las etiquetas