AppleScript para cambiar el nombre de las subcarpetas

1

Tengo una estructura de archivos para fotos que es Año > Fecha, luego dentro de cada carpeta de fecha tengo imágenes RAW más una carpeta llamada 'jpg', que contiene copias en formato jpg de los archivos RAW.

Necesito mover las carpetas jpg a una nueva ubicación, pero cambiarles el nombre primero, al nombre del primer archivo en la carpeta, que siempre es un descriptor, así que de 'jpg' a 'Jack and Jill-1. jpg '

Una vez que haya cambiado el nombre de todas las carpetas (10 años de fotos), puedo eliminar la extensión y el número, dejándome con una carpeta llamada 'Jack and Jill'

Soy un novato absoluto con AppleScript, pero tengo una secuencia de comandos que funciona en cierto sentido, ya que funciona perfectamente en una carpeta de prueba en mi escritorio, pero no puedo hacer que se ejecute en una unidad montada, o mi unidad de red.

El guión que he matado posiblemente lleva exceso de equipaje y se puede recortar, pero realmente estoy buscando una función sobre la forma, ya que solo tiene que ejecutarse una vez.

El script es solo para el cambio de nombre inicial, tengo el lado de eliminación de la extensión funcionando bien a través de Better Rename.

tell application "Finder"
    -- Defining Pro Folders 
    set pro_folder to folder POSIX file "/Users/JeffOliver/Desktop/photo"
    set all_pro_folders to every folder of pro_folder

    -- Iterate through folders and check if folder name is greater than one character
    repeat with parent_folder in all_pro_folders
        set counter to 0 -- reset a counter variable we use for the end of the name 
        set child_folders to every folder of parent_folder
        repeat with current_folder in child_folders
            set fold_name to the name of current_folder
            log (fold_name)
            if (the length of fold_name < 8) then -- this will allow names > 9  
                set counter to counter + 1 -- increment the counter every time we find valid folder
                set new_name to name of first file of current_folder
                log (new_name)
                set the name of current_folder to new_name
            end if
        end repeat
    end repeat
end tell

Cualquier ayuda para que esto funcione en una unidad de red es muy apreciada

    
pregunta Jeff Oliver 21.04.2017 - 11:04

0 respuestas

Lea otras preguntas en las etiquetas