0 votos

Mover archivos a diferentes carpetas según la extensión del archivo con AppleScript

Estoy luchando por escribir un script y estoy buscando algo de ayuda :)

La idea del script es la siguiente:

  1. Pedir al usuario la ubicación de la ENTRADA y la SALIDA
  2. Crear 2 carpetas en la ubicación OUTPUT ("r3d" y "mov")
  3. Analice las carpetas de la ubicación INPUT en busca de archivos ".R3D" y cópielos en "OUTPUT>rd3"
  4. Buscar archivos ".mov" en las carpetas de las ubicaciones de ENTRADA y copiarlos en "SALIDA>mov"
  5. Avisa cuando el proceso se ha completado.

Mis conocimientos de AppleScript son muy básicos esta es la idea del script que tengo pero está claro que esto no va a funcionar. ¿Alguien podría ayudarme y modificar esto?

display dialog "choose input"
set INPUT to choose file

display dialog "choose output"
set OUTPUT to choose file

tell application "Finder"
    make new folder at OUTPUT with properties{name:"mov"}
    make new folder at OUTPUT with properties{name:"r3d"}
end tell

tell application "Finder"
    move (every file of folder INPUT whose name extension is "mov") to folder "OUTPUT:mov"
    move (every file of folder INPUT whose name extension is "R3E") to folder "OUTPUT:r3d"
end tell

display dialog "Process Complete"
reveal OUTPUT

Agradecería mucho cualquier tipo de ayuda. Esta pieza de código podría ser útil para otras personas que trabajan con el sistema de cámara RED y que quieren agilizar su proceso de organización de archivos para dividir los archivos proxy y RED.

Saludos, Pierre

1voto

red_menace Puntos 111

Hay algunos problemas con tu script:

  1. Hay un choose folder para elegir una carpeta (consulte el Guía del lenguaje AppleScript para las distintas declaraciones y comandos);
  2. Intentar crear una nueva carpeta donde ya existe dará lugar a un error, por lo que tendrá que atrapar el error o mirar primero si la carpeta ya existe;
  3. El reveal es para el Finder, por lo que tiene que estar en un Finder tell declaración.

    set INPUT to choose folder with prompt "Choose the input folder:" set OUTPUT to choose folder with prompt "Choose an output folder:"

    tell application "Finder" if not (exists folder "mov" of OUTPUT) then make new folder at OUTPUT with properties {name:"mov"} if not (exists folder "r3d" of OUTPUT) then make new folder at OUTPUT with properties {name:"r3d"}

    move (every file of folder INPUT whose name extension is "mov") to folder "mov" of OUTPUT move (every file of folder INPUT whose name extension is "R3E") to folder "r3d" of OUTPUT reveal OUTPUT end tell

    display dialog "Process Complete"

Tenga en cuenta que si una extensión de archivo no ha sido registrada en el sistema (por una aplicación que la reconozca), no será considerada por el Finder como una extensión real cuando se utilice una forma de referencia de filtro (el whose cláusula).

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